Android Monkey 测试策略【转】
Monkey 测试针对不同的对象和不同的目的,需要采用不同的测试方案。
首先测试的对象、目的及类型如下:
-
测试的类型
- 应用程序的稳定性测试
- 应用程序的压力测试
-
测试对象
- 单一 apk
- apk 集合
-
测试的目的
- 解决问题的测试(忽略异常的测试)
- 验收测试(不忽略异常的测试)
应用程序的稳定性测试
针对单个apk
- 不忽略异常
在进行单个 apk 的验收测试时,则使用单一 apk 且不忽略异常的命令执行。
例如:
monkey -p com.android.mms --throttle 1000 -s 100-v -v -v 15000 > /mnt/sdcard/monkey_test.txt &
- 忽略异常
在进行单个 apk 的解决问题的测试时,则使用单一 apk 且忽略异常的命令执行,这样可以在一次执行的过程中发现应用程序中的多个问题。
例如:
monkey -p com.android.mms --throttle 1000 -s 100--ignore-crashes --ignore-timeouts --ignore-security-exceptions--ignore-native-crashes --monitor-native-crashes -v -v -v 15000 >/mnt/sdcard/monkey_test.txt &
针对多个 apk
- 不忽略异常
例如:
monkey --pkg-whitelist-file /data/whitelist.txt--throttle 1000 -s 100 -v -v -v 15000 > /mnt/sdcard/monkey_test.txt &
- 忽略异常
例如:
monkey --pkg-whitelist-file /data/whitelist.txt--throttle 1000 -s 100 --ignore-crashes --ignore-timeouts--ignore-security-exceptions --ignore-native-carshes --monitor-native-crashes-v -v -v 15000 > /mnt/sdcard/monkey_test.txt &
应用程序的压力/健壮性测试
应用程序的压力/健壮性测试,其主要是缩短 monkey 测试中事件与事件之间的延迟时间,验证在快速的事件响应的过程中,程序是否能正常运行。这种压力/健壮性测试主要是针对单一 apk 来执行;我们可以将 --throttle
的值设定为 500 或者更小,一般都使用 500 毫秒的延迟事件。
在进行 apk 的集合测试时,对于高频率使用的 apk、长时间使用的 apk 都要包含在执行的应用程序中间。
APK分类具体:
- 高频率使用的 apk 如:Phone、Contacts、Message、Settings、File Manager、Gallery、Input Method
- 长时间使用的 apk 如:Phone、Browser、Music player、Camera、Video player、Email、Chat
- 其他的 apk 如:Calendar、Notepad、Calculator、FM Radio、Google Search
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?