monkey测试

一、ADB连接Android设备

1. WiFi连接(手机与pc同一个局域网下)
与电脑在同一局域网内,Android设备连接WiFi,然后adb命令#adb connect <设备IP>
例:adb connect 192.168.1.XXX:XXXX
返回 connected to 192.168.1.XXX:XXXX 表示连接成功
adb devices # 查看所有以连接的设备

2. USB数据线连接
此种连接要有相应的驱动才行(应该安装phoenixsuit就可以通过数据线来通过adb连接设备,有的不用安装)
https://download.csdn.net/download/c1063891514/10589989

3. 串口连接
使用串口设备与电脑连接。

二、找到程序包名

在命令行窗口输入:adb shell
在adb shell 中输入:logcat|grep START
去手机上打开被测应用

package:name='com.flychord.authorware'

本次程序包名:com.flychord.authorware

三、执行monkey

adb shell monkey -p com.ss.android.article.news -s 123 --throttle 500 --ignore-crashes
--ignore-security-exceptions --ignore-timeouts -v -v -v 2000 >d:\monkeytest01.log
命令解释
adb shell进入adb的shell模式
monkey调用monkey工具
-p后面指定一个包名(指定被测应用)
-s指定一个标志,这个标志可以用来重现操作步骤
–throttle 500表示操作间隔
–ignore-crashes忽略崩溃问题
–ignore-security-exceptions忽略安全异常
–ignore-timeouts忽略超时
-v -v -v最详细日志级别
2000操作次数
>d:\monkeytest01.log保存日志

Monkey基本命令参数的介绍

命令解释
-p指定测试包名,可以指定多个
-v仅提供启动提示、测试完成和最终结果等少量信息, 适合于一般的调试
-v -v提供较为详细的日志,包括每个发送到Activity的事件信息
-v -v -v最详细的日志,包括了测试中选中/未选中的Activity信息
-s指定seed值,如果seed相同,则两次Monkey测试所产生的事件序列也相同的
-c指定一个或多个类别的activity被启动
-ignore-crashes 和-ignore-timeouts在应用崩溃和无响应的情况下,monkey不会停止
-throttle MILLISEC表示每一个随机事件中间的时间间隔
-ignore-security-exceptions通常,当应用程序发生许可错误(如启动一个需要某些许可的Activity)时,Monkey将停止运行。如果设置了此选项,Monkey将继续向系统发送事件,直到计数完成
-monitor-native-crashes监视并报告Android系统中本地代码的崩溃事件。如果设置了–kill-process-after-error,系统将停止运行
-kill-process-after-error如果程序出现错误,monkey将结束此程序进程
-hprof设置此项,将在monkey事件序列之前和之后立即生成profilling报告。这将会在data/misc中生成大文件(约5mb)所以要小心使用它
- -pct-{+事件类别}{+事件类别百分比} 例:adb shell monkey -p cn.emoney.acg --pct-touch 10 1000
-pct-touch调整触摸事件的百分比(触摸事件是一个down-up事件,它发生在屏幕的某单一位置)
-pct-motion动作事件的百分比(动作事件由屏幕上某处的一个down事件、一系列的随机事件和一个up事件组成)
-pct-trackball调整轨迹事件的百分比(轨迹事件由一个或几个随机移动组成,有时还伴随着点击)
-pct-syskeys调整系统按键事件的百分比(这些按键通常被保留,由系统使用,如home,back,start call,end call及音量控制)
-pct-nav调整基本导航事件的百分比(导航事件来自方向输入设备的up/down/left/right组成)
-pct-majornav调整“主要”导航事件的百分比(这些导航事件通常引发图形界面中的动作,如:5-way键盘的中间按键、回退按键、菜单按键)
-pct-appswitch调整启动Activity的百分比。在随机间隔里,Monkey将执行一个startActivity()调用,作为最大程度覆盖包中全部Activity的一种方法
-pct-anyevent调整启动Activity的百分比。它包罗了所有其它的事件类型,如:按键,其它不常用的设备按钮
-wait-dbg停止执行中的Monkey,直到有调试器和它相连接
-dbg-no-events设置此选项,Monkey将执行初始启动,进入到一个测试Activity,然后不会再进一步生成事件。为了得到最佳结果,把它与-v、一个或几个包约束、以及一个保持Monkey运行30秒或更长时间的非零值联合起来,从而提供一个环境,可以监视应用程序所调用的包之间的转换
-port为monkey开启专用端口。此时只monkey不会帮你乱点击,而此时你自己就是一只monkey了,在你乱点的时候,monkey会输出你点击后回馈的信息。如果你打完命令之后模拟器上没有启动你所要启动的包,你需要自己启动,但是你只能启动你-p中指定的那几个包 。ctrl+c中断

四、终止测试

进入 控制平台:adb shell
获取monkey的进程号:ps | grep monkey,返回来的数字,即是monkey的进程号,如12556
杀monkey进程:kill 12556

五、断开连接

输入:adb disconnect 192.168.1.XXX:XXXX
返回:No such device 192.168.1.XXX:XXXX 表示断开成功

六、查看log

搜索ANR:answer no response(无响应)
搜索CRASH:崩溃问题
搜索exception:其他异常

额外一些adb操作命令

1.查看设备
adb devices
这个命令是查看当前连接的设备, 连接到计算机的android设备或者模拟器将会列出显示

2.安装软件
adb install
adb install <apk文件路径> :这个命令将指定的apk文件安装到设备上

3. 卸载软件
adb uninstall <软件名>
adb uninstall -k <软件名>
如果加 -k 参数,为卸载软件但是保留配置和缓存文件.

4. 进入设备或模拟器的shell:
adb shell
通过上面的命令,就可以进入设备或模拟器的shell环境中,在这个linux Shell中,你可以执行各种Linux的命令,另外如果只想执行一条shell命令,可以采用以下的方式:
adb shell [command]
如:adb shell dmesg会打印出内核的调试信息。

5. 发布端口
可以设置任意的端口号,做为主机向模拟器或设备的请求端口。如:
adb forward tcp:5555 tcp:8000

6. 从电脑上发送文件到设备
adb push <本地路径> <远程路径>

用push命令可以把本机电脑上的文件或者文件夹复制到设备(手机)

7. 从设备上下载文件到电脑
adb pull <远程路径> <本地路径>
用pull命令可以把设备(手机)上的文件或者文件夹复制到本机电脑

8、查看bug报告
adb bugreport

9、记录无线通讯日志
一般来说,无线通讯的日志非常多,在运行时没必要去记录,但我们还是可以通过命令,设置记录:
adb shell
logcat -b radio

10、获取设备的ID和序列号
adb get-product
adb get-serialno
adb shell
sqlite3

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值