App移动端测试monkey测试特定的App

Posted 寻觅的狮子

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了App移动端测试monkey测试特定的App相关的知识,希望对你有一定的参考价值。

1.1 包约束

回顾通过uiautomator 去查看某个应用的包名。如qq包名:com.tencent.mobileqq 微信包名:com.tencent.mm
参数-p,如

adb shell monkey  –p  com.tencent.mobileqq  100

如果说同时操纵2个应用

adb shell monkey  –p  com.tencent.mobileqq   -p   com.tencent.mm  500   
#同时启动了微信与qq

1.2. Activity约束

Activity涉及到类,与开发人员息息相关。而自动化测试工程师未必知道,因此使用率并不高
参数 –c,格式:

adb shell monkey -c <main-category> <event-count>

1.3. 当出错的时候该如何处理

  • 当应用程序崩溃后,继续发送事件
  • adb shell monkey --ignore-crashes <event-count>
  • 超时错误继续发送事件
  • adb shell monkey --ignore-timeouts
  • 当应用程序权限错误发生后继续发送事件
  • adb shell monkey --ignore-security-exceptions
  • 其他:安卓系统崩溃等。

2.Monkey命令综合案例

案例:
以腾讯qq为例进行测试,通过monkey对qq进行随机操作测试。
要求:

  • 指定包名 com.tencent.mobileqq (-p)
  • 假设qq日常操作的触摸事件与手势事件较多,因此该2项占用比例要较多 --pct-touch(40%) 和 –pct-motion(25%)
  • 对activity进行大量测试 --pct-appswitch将activity的事件占比调整到15%
  • 对屏幕的旋转测试,--pct-rotation(10%)
  • 便于回放事件流一致。需要设定Seed -s
  • 考虑到2个事件操作间的间隔,设定间隔时间为1000ms,每个monkey操作固定延迟0.3秒
  • 考虑monkey执行过程中,可能会程序发生意外(崩溃等)--ignore-crashes --ignore-timeouts
  • 使用日志,-v,日志级别是1级即可(2个-v)

Monkey脚本:

C:\\Users\\Leo>adb shell monkey -p com.tencent.mobileqq --pct-touch 40 --pct-motion 25 --pct-appswitch 15 --pct-rotation 10 -s 1000 --throttle 300 --ignore-crashes --ignore-timeouts -v -v 200


如果你觉的文章读的不过瘾,可以查看详细的视频教程。

【51CTO】测试全栈课程

测试学习路线如下




::: hljs-center
:::

以上是关于App移动端测试monkey测试特定的App的主要内容,如果未能解决你的问题,请参考以下文章

移动端手机 App 耗电量测试:Monkey 电量测试基本操作及 Android 性能优化

移动端 App UI 自动化测试浅谈

Android APP压力测试之理论

app测试总结

稳定性测试工具-Monkey

一种精准monkey测试的方法