6

App移动端测试【9】monkey测试特定的App

 2 years ago
source link: https://blog.51cto.com/starpoint/5644476
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

通过monkey测试特定的App

1.Monkey测试特定的app

通过monkey可以测试特定的app,基础语法如下:

adb shell monkey  [options]   200

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
App移动端测试【9】monkey测试特定的App_Monkey

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

【51CTO】测试全栈课程

 《全栈测试工程师》VIP课程体系【课程上新阶段,8折销售中】
【测试全栈课程】服务
1.入班学员1对1摸底调研,制定【贴合】自身的学习计划;
2.全程【陪伴式】学习,每周定期跟踪督导;
3.专有学习社群小组,问题随时联系老师;
4.课程专属配套资料包全程免费提供,让学习更无忧;
5.简历指导+模拟面试+面试题库,让跳槽更无忧;
6.工作伴你行:工作中遇到问题,随时与老师交流;
7.课程免费升级权:新技术课程,无需2次付费,免费享有。
8.赠送配套出版书籍

测试学习路线如下

App移动端测试【9】monkey测试特定的App_Monkey_02
App移动端测试【9】monkey测试特定的App_App测试_03
App移动端测试【9】monkey测试特定的App_移动端测试_04
App移动端测试【9】monkey测试特定的App_Monkey_02
App移动端测试【9】monkey测试特定的App_App测试_03
App移动端测试【9】monkey测试特定的App_移动端测试_04
App移动端测试【9】monkey测试特定的App_Monkey_08

App移动端测试【9】monkey测试特定的App_Monkey_09


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK