monkey 安装 - 使用 - 回归 - 日志输出 -排查

monkey的简单介绍
Monkey测试是Android app自动化测试的一种手段,Monkey测试自己很是简单,就是模拟用户的按键输入,触摸屏输入等,看设备是否出异常。
当Monkey程序在模拟器或设备运行的时候,若是用户出发了好比点击,触摸,手势或一些系统级别的事件的时候,它就会产生随机事件,因此能够用Monkey用随机重复的方法去测试app. shell

 

一:前提:电脑已经安装AndroidSDKapp

1.设安装包: xxx.apk ,包名为:com.xxx_xxx测试

2.把安装包放在:C:\monkey (monkey为新建的文件夹)spa

3.cmd进入命令行,手机和电脑链接。手机打开开发者模式,容许调试.net

4.输入:adb devices ,出现下图的提示,表示链接成功,就能够进行下一步操做。命令行

二:输入命令:cd C:\monkey 这样就进入了放置安装包的目录下,就能够安装安装包了线程

1.安装包:adb install xxx.apk指针

2.查看包名:aapt dump badging C:\monkey\xxx.apk调试

3. 直接运行10次 :adb shell monkey -v -p com.xxx_xxx(包名) 10日志

4.重复以上操做: adb shell monkey -s (seed) -v <envent-count> 如:adb shell monkey -s 1535655135292 -v 10

5.生成txt日志:adb shell monkey -v -p com.xxx_xxx(包名) 10 >./monkey_log.txt

三:指定时间参数设置

在Monkey中,虽然输入的事件是随机产生的,可是能够指定输入事件类型的百分比,让其控制在咱们须要的范围内。

在Monkey中,能够设定的事件类型有:

--pct-touch <percent>:指定触摸事件的百分比。--pct-motion <percent>:指定滑动事件的百分比--pct-trackball <percent>:指定轨迹球事件的百分比--pct-nav <percent>:指定导航事件中,up、down、left、right等事件的百分比--pct-majornav <percent>:指定导航事件中,back、menu等事件的百分比--pct-syskeys <percent>:指定系统按键的百分比,包括HOME、Back、音量等。--pct-appswitch <percent>:指定Activity之间切换的比例。--pct-anyevent <percent>:指定任意事件的百分比

默认状况下,若是不设置,会是-pct-anyevent为百分之百,也就是纯随机事件。若是经过其余的参数配置了以后,若是相加的百分比不为百分百,余下的百分比部分也会生成随机事件。

4、日志参数

-v 较少的日志信息 
-v -v 较为丰富的日志信息 
-v -v -v 最高级别的日志信息

通常状况下单个app monkey 模拟测试10万次足矣。

5、如下是app monkey测试的详细步骤
1. 先进入cmd界面,输入adb devices,查看是否正常链接。
2. 输入adb logcat | findstr START 监控app,打开你要测试的app,cmd查看app的包名。cmp=右边的就是app的包名。
3. 输入adb logcat -c 先清除下logcat日志信息
4. 输入adb logcat -v time >F:\logcat.log
5. 输入adb shell monkey -p +app包名 -v 10000 >F:\monkey.log

 

0–> –pct-touch
1–> –pct-motion
3–> –pct-trackball
6–> –pct-nav
7–> –pct-majornav
8–> –pct-syskeys
9–> –pct-appswitch
11–> –pct-anyevent

 

6、经过adb命令作回归测试 

当开发修改问题后,须要作回归测试验证是否修改ok,此时测试人员须要使用上一次跑的monkey测试中的seed值作回归测试。

** System appears to have crashed at event 468 of 1000 using seed 1557722456728

该seed值,在上次跑完脚本的时候,能够在最后一行显示打印出来,记得日志显示使用详细,即-v -v -v才能看到seed值


adb shell monkey -p +包名 -s +seed值 -v 10000 
好比 
adb shell monkey -p com.shanjian.originaldesign -s 1536629919450 -v10000

7、monkey日志分析 
当monkey测试时出现问题,此时咱们须要分析定位问题,咱们须要分析monkey日志

Monkey测试出现的异常的缘由: 
通常是两种缘由致使的,一个是crash 程序崩溃,致使crash缘由以下 
a)、程序存在空指针 
b)、cpu不足 
c)、内存不足

另外一种是ANR 程序无响应,致使anr无响应缘由以下: 
a)、线程阻塞 
b)、cpu不足 
c)、内存不足

查找分析缘由:

1. 当monkey测试出现异常终止,请打开logcat日志搜索关键字‘anrin’,若是存在该关键字,说明app出现了ANR异常,咱们须要把/data/anr目录下的trace.txt文件取下来。 
2. 取下来trace.txt文件后,将出现问题的进程号对应的日志发给软件工程师定位,若是在logcat日志里没有搜索到’anrin’关键字,就搜索’nullpointer’异常关键字的上下日志,发给开发定位 
3. 当出现ANR后,须要导出,步骤以下: 
1. 输入adb shell 
2. 输入cd /data/anr/ 
3. 输入ls

退出exit后,直接在cmd下输入
4. adb pull /data/anr/traces.txt   d:\trace.txt 
5. 在logcat将出现anr问题的进程号复制,而后在trace.txt文件里按ctrl+F 查找,粘贴进程号,查找对应的问题

 

--------------------- 

相关文章
相关标签/搜索