安卓移动端monkey自动化测试 您所在的位置:网站首页 如何做monkey测试 安卓移动端monkey自动化测试

安卓移动端monkey自动化测试

2024-07-16 04:48| 来源: 网络整理| 查看: 265

monkey是安卓平台的一个命令行工具,用来对应用程序进行随机的自动化测试,主要是用来检测程序的稳定性、发现崩溃crash和程序无反应(ANR)的问题,由于monkey发的是随机事件,所以可以使用monkey来对应用程序做压力测试,验证程序的可靠性。

前期步骤:需要用usb将电脑和安卓设备连接到一起,打开安卓设备上的开发者模式中的usb调试,另外电脑上需要安装adb工具

查看是否安卓设备是否连接成功:

adb devices可以查看到已经连接上来的安卓设备

List of devices attached 2c7c688a device

如果不知道要则是的应用程序的包名,可以打开应用程序后,使用命令adb shell dumpsys window w  | findstr name=来查看包名,如下,我打开了平板上的贝乐虎,包名输出:

mSurface=Surface(name=RoundCorner) mSurface=Surface(name=RoundCorner) mSurface=Surface(name=NavigationBar) mSurface=Surface(name=StatusBar) mSurface=Surface(name=com.ubestkid.beilehu.android/com.ubestkid.foundation.activity.home.PadSongHomeActivity) mSurface=Surface(name=com.android.systemui.ImageWallpaper) name=pip_input_consumer

根据上面加黑的看出包名就是:com.ubestkid.beilehu.android

简单的monkey测试:adb shell monkey -p com.ubestkid.beilehu.android  -v 500 > monkey1.txt  表示向包名是 com.ubestkid.beilehu.android的应用发500个随机事件。

启动Monkey测试: adb shell monkey [options] :指定Monkey要执行的事件数量。 [options]:一系列可选参数,用于定制测试行为。 常用Monkey命令参数: -p :指定要测试的应用包名。 -v 或 -v -v 或 -v -v -v:增加日志的详细程度,可以多次使用以增加详细级别。 --throttle :指定事件间隔时间,单位是毫秒。 --ignore-crashes:即使遇到崩溃也不停止测试。 --ignore-timeouts:忽略超时异常,继续测试。 --ignore-security-exceptions:忽略安全异常。 --kill-process-after-error:在遇到错误后结束测试并杀死进程。 -s :指定随机数生成器的种子值,使得测试可重复。

 

使用详细举例:

adb shell monkey -p com.ubestkid.beilehu.android --throttle 800 -v -v -v 10000 > monkey.log & adb shell logcat -v time > logcat.log & 

--throttle 800 表示前后两个事件间隔是800ms,不会一下子就跑完了,事件可以按照自己的需要调节

10000是随机事件的数目,如果上面间隔比较大的话,会执行比较久

同时还会执行adb logcat抓日志  -v time表示的是日志中会加上时间记录

 

这个日志介绍了很多事件分布百分比:https://blog.csdn.net/bulucc/article/details/130814316

执行monkey后需要进行日志分析:

执行完Monkey测试后,日志会被保存到指定文件或默认位置(如手机的/sdcard/monkey.log)。 通过日志搜索关键词如“ANR”、“CRASH”或“Exception”来定位问题。 使用文本编辑器(如Notepad++)打开日志文件,便于搜索和分析


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有