美文网首页软件测试技术
Android测试工具之monkey小结

Android测试工具之monkey小结

作者: 井望 | 来源:发表于2017-04-17 13:48 被阅读126次

    一.Monkey

    1.monkey简介

    这个工具是最简单的,主要用来做app压力测试,所谓压力测试就是乱点以模拟各种各样奇怪的操作看app能不能抗的住。或者可以帮助找出app的一些隐藏极深的bug。非常简单且作用也非常有限,通常通过跑monkey后打印出来的日志分析来发现问题。

    2.monkey最常用命令

    2.1、

    $ adb shell monkey -p com.jollycorp.jollychic -v 1000

    应用模拟用户随机操作,无延迟点击1000次。

    其中参数-p用来指定参数,指定一个或多个包;参数-v 设置日志级别(默认一个-v),如需更详细的日志可以加多个-v,最多3个,如monkey -p  com.jollycorp.jollychic -v -v -v 1000  \\3个-v,输出最详细的日志。

    2.2、

    adb shell monkey -p com.jollycorp.jollychic --throttle 500 100 > F:\monkeylog\monkey.txt

    其中参数--throttle指定随机事件间的时间间隔,单位是毫秒,一般用500;最终把操作后的日志输出到电脑上的F:\monkeylog\monkey.txt。
    2.3、

    Monkey 测试1:adb shell monkey -p com.jollycorp.jollychic -s 10 100

    Monkey 测试2:adb shell monkey -p com.jollycorp.jollychic -s 10 100

    用于指定伪随机数生成器的seed值,如果seed相同,则两次Monkey测试所产生的事件序列也相同的。如上面的Monkey测试1和2,两次测试的效果是相同的,因为模拟的用户操作序列(每次操作按照一定的先后顺序所组成的一系列操作,即一个序列)是一样的。注意:seed值一般设为小于1000。

    2.4、

    adb shell monkey -p com.jollycorp.jollychic -s 500 --ignore-crashes --ignore-timeouts --monitor-native-crashes -v -v 10000 > F:\monkeylog\monkey_10000.txt

    --ignore-crashes忽略崩溃,继续测试,若不做此限制,monkey测试出现崩溃时会自动停止测试;

    同理,在中间插入控制命令如下:

    --ignore-timeouts 忽略连接超时

    --ignore-security-exceptions忽略在应用程序发生许可证错误(认证或证书异常),

    --kill-process-after-error在应用程序出现错误后,将会通知系统停止发生错误的进程

    --monitor-native-crashes监视并报告Android系统中本地代码的崩溃事件,如果设置”--kill-process-after-error”参数,系统将停止运行该进程

    --ignore-native-carshes忽略本地代码导致的崩溃

    2.5、

    adb shell monkey -p com.jollycorp.jollychic -s 500 --throttle 500 --ignore-crashes --ignore-timeouts --monitor-native-crashes -v -v -v 10000 >  F:\monkeylog\monkey_10000.txt

    一次可行的monkey测试实例,具体作用供分析研究。

    3.monkey日志简介

    3.1、Monkey finished

    打开LOG,查看log的最下端,是否有类似以下字段:

    ## Network stats: elapsed time=5123ms (5123ms mobile, 0ms wifi, 0ms not connected)

    // Monkey finished

    这个字段表明本次的Monkey没有异常,测试通过。

    3.2、CRASH

    同样,在得到LOG后,搜索”CRASH”字段,如果搜索到有结果,则表明有进程出现问题,测试不通过。

    // CRASH: com.onekchi.downloadmanager (pid 12919)

    3.3、ANR

    在Log中搜素该字段,如果有搜索有结果,则表示测试过程中,测试对象出现了无响应的现象,因此测试不通过。--throttle <毫秒>值建议为500

    3.4、无法搜索到上述信息

    出现这种情况,一般都是外界原因而非程序本身原因。比如电脑异常测试中断,需要重新测试。

    参考文档:

    http://developer.android.com/intl/zh-cn/tools/help/monkey.html

    http://blog.csdn.net/cxq234843654/article/details/47153345

    相关文章

      网友评论

        本文标题:Android测试工具之monkey小结

        本文链接:https://www.haomeiwen.com/subject/twttzttx.html