自动化Android Monkey运行的想法

7
我目前使用Android Monkey工具来进行压力测试Android系统/包。 我觉得它很有用。 但到目前为止,一切都是手动测试(即打开模拟器,执行adb shell monkey <...>等)。 我想“自动化”这个过程,并由构建服务器外部触发。
我的最初的想法是编写一个shell脚本来执行monkey(使用随机种子),然后将结果存储在构建服务器可访问的文件中。 但这真的有用吗?
只是好奇是否有人以前做过这个,或者有一个更聪明的想法来自动运行Android Monkey。 使用“automating android monkey”这些术语进行的Google搜索几乎没有相关信息。
欢迎所有想法。

这个问题已经存在很长时间了,除了使用bash之外,最近有没有其他解决方案? - Naman
2个回答

10

更新:

考虑了很多,最终我选择了一个简单的shell脚本,因为我无法想到更“聪明”的方法。它仍在不断改进中。以下是它目前的状态:

#!/bin/bash

REPORTROOT=./reports

# remove old report files
echo "Removing old output report files..."
rm $REPORTROOT

# make dir for new report files
echo "Output reports will be stored in $REPORTROOT..."
mkdir $REPORTROOT

# run monkey on the entire system
echo "Running Monkey on entire system..."
adb -e shell monkey -v -v -v 500 > $REPORTROOT/monkey_sys.txt
# pull the log file from device?

# run monkey on particular packages
# packages here...

# create composite report
echo "Running reports..."
grep -A 5 -h -r CRASH $REPORTROOT > $REPORTROOT/crash_report.txt

输出的是一个简单的 .txt 文件,其中包含一些有关崩溃的信息。


7
你可以看一下Hudson - 它应该能够启动模拟器,然后执行你的Android Monkey命令。

这,加上Hudson Android模拟器插件。 - Christopher Orr
当然没错 - 那就是我想表达的,只是没有说清楚 :-/ - Richard Green
非常好的反馈!我已经让构建服务器启动模拟器实例并运行一堆InstrumentationTestCases并呈现结果。我希望有人专门自动化Monkey运行并发现它是否有用/无用(一种自动化Monkey的经验教训)。 - dstricks
请随意点击绿色勾号!! - Richard Green

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接