6.26__app测试mokey测试
作者:互联网
1. adb命令:
adb connect ip :连接某个设备(真机设备可以用usb(开usb调试)与wifi连接)
注意:要连接的真机ip必须和自己的pc网络在同一网络内adb不能跨局域网连接设备
adb devices:查看连接设备信息
![](https://www.icode9.com/i/l/?n=22&i=blog/2012893/202206/2012893-20220626172725223-1561588036.png)
连接信息: 手机设备:显示设备的序列号 b2355f8a 模拟器:显示ip地址和端口号 127.0.0.1:62001 device:已识别的设备 表示连接成功 unauthorized:没有授权需要手机授权才能连接 unkown:未识别的设备 offline:离线设备 Adb命令: 1. adb命令: adb version :查看当前adb版本 adb start-server:启动adb服务 adb kill-server:关闭adb服务 adb nodaemon server:检查5037端口是否被占用 如果被占用则提示: cannot bind to 127.0.0.1:5037 adb install xxx.apk(apk包的路径):安装apk应用包 adb shell pm list package -3:显示所有第三方app包名 adb uninstall packName(app包名):卸载apk应用包 adb dump badging apkpath(apk包的路径):获取app包的名称与aActivity aapt d bading 包路径 adb shell pm list packages:显示手机中所有的app包的名称 adb reboot:重启模拟器 adb shell:进入安卓手机目录 3-3、Adb命令: 1. adb命令: adb get-serialno:获取手机序列号
![](https://www.icode9.com/i/l/?n=22&i=blog/2012893/202206/2012893-20220626173051321-1759121409.png)
adb shell wm size:获取手机屏幕分辨率
![](https://www.icode9.com/i/l/?n=22&i=blog/2012893/202206/2012893-20220626173114215-875639546.png)
adb shell getprop ro.product.model:查看手机的设备型号
![](https://www.icode9.com/i/l/?n=22&i=blog/2012893/202206/2012893-20220626173129103-759748450.png)
adb shell cat /proc/cpuinfo:获取手机的 cpu 信息
![](https://www.icode9.com/i/l/?n=22&i=blog/2012893/202206/2012893-20220626173148677-1715365238.png)
adb shell cat /sys/class/net/wlan0/address:获取手机的 mac 地址
![](https://www.icode9.com/i/l/?n=22&i=blog/2012893/202206/2012893-20220626173208533-848364135.png)
adb logcat:查看所有进程运行日志
![](https://www.icode9.com/i/l/?n=22&i=blog/2012893/202206/2012893-20220626173302644-685377988.png)
adb logcat | find “com.baidu.yuedu”:查看指定app百度阅读app日志 + -f androidpath/filename:将日志写入到文件中并保存在手机上
![](https://www.icode9.com/i/l/?n=22&i=blog/2012893/202206/2012893-20220626173835425-493164547.png)
+ >windowspath/filename:将日志写入到文件中并保存在pc上
![](https://www.icode9.com/i/l/?n=22&i=blog/2012893/202206/2012893-20220626174047090-998902997.png)
adb push windowspath androidpath:上传文件到手机端 adb pull androidpath windowspath:手机端上传文件到pc端 adb -s deviceName shell :进入到指定设备的目录
![](https://www.icode9.com/i/l/?n=22&i=blog/2012893/202206/2012893-20220626174159463-387762074.png)
adb -s deviceName install xxx.apk:安装应用到指定的设备目录 ============================================================ monkey压力测试原理: 1. Monkey 就是SDK中附带的一个工具。Monkey是Android中的一个命令行 工具,可以运行在模拟器里或实际设备中。它向系统发送伪随机的用户事件流(如按 键输入、触摸屏输入、手势输入等),实现对正在开发的应用程序进行压力测试。 Monkey测试是一种为了测试软件的稳定性、健壮性的快速有效的方法。 该工具用于进行压力测试。然后开发人员结合monkey 打印的日志和系统打印的日 志,分析测试中的问题 2、 Monkey运行原理: 命令行:adb shell monkey --》monkey.shell --》monkey.jar --》android进程--》设备上执行测 试 3、
![](https://www.icode9.com/i/l/?n=22&i=blog/2012893/202206/2012893-20220626174512705-750282364.png)
4、
1. Monkey实战: adb shell monkey help:monkey命令介绍 adb shell monkey 100:对模拟器或真机做100次随机操作![](https://www.icode9.com/i/l/?n=22&i=blog/2012893/202206/2012893-20220626174846074-235764591.png)
adb shell pm list package -3:显示第三方的app包的名称
![](https://www.icode9.com/i/l/?n=22&i=blog/2012893/202206/2012893-20220626174921749-2088694358.png)
adb shell monkey –p app包名 100:对指定的app做100随机操作
![](https://www.icode9.com/i/l/?n=22&i=blog/2012893/202206/2012893-20220626175051209-1631007008.png)
2. Monkey稳定性实战: adb shell monkey –p app包名 –throttle 1000 100: 对指定的app每隔1秒做1次操作 做100次
![](https://www.icode9.com/i/l/?n=22&i=blog/2012893/202206/2012893-20220626175225523-30322169.png)
adb shell monkey –p app包名 –throttle 1000 36000: 每隔1秒对app随机做1次操作持续10小时(实际工作测app稳定性时使用)
![](https://www.icode9.com/i/l/?n=22&i=blog/2012893/202206/2012893-20220626175327262-1869438579.png)
3、Monkey日志分析: (1). Monkey日志命令: -v:leve0 除启动提示、测试完成和最终结果之外、提供较少信息 -v -v:leve1 提供较为详细的日志,包括每个发送到Activity的事件信息 -v –v –v:leve2 最详细的日志,包括了测试中选中,未选中的Activity信息 (2) Monkey日志分析: adb shell monkey –p app包名 --throttle 1000 –v-v-v 100: 每隔1秒对app做1次随机操作,执行100次,并输出详细日志
![](https://www.icode9.com/i/l/?n=22&i=blog/2012893/202206/2012893-20220626175708978-482904775.png)
adb shell monkey –p app包名 --throttle 1000 –v-v-v 100 >C:\Users\Desktop\applog.txt:输出日志文件到本地路径
![](https://www.icode9.com/i/l/?n=22&i=blog/2012893/202206/2012893-20220626175813652-1529346164.png)
Monkey日志分析: 1. Monkey日志分析: 正常情况: 如果Monkey测试顺利执行完成,在log的最后会打印出当前执行事件的次数 和所花费的时间;// Monkey finished 代表执行完成 异常情况: 查阅Monkey的输出日志: 1. 程序无响应的问题: 在日志中搜索 “ANR” 2. 崩溃问题:在日志中搜索 “Exception” 3. 如果有空指针,搜索“NullPointerException” 4. 如果Monkey执行中断,在log最后也能看到当前执行次数 Monkey日志分析: 1. Monkey日志分析: 重现异常以及回归验证: -s:在命令中加上seed值 确保两次执行的序列号一样 如果第一次稳定性测试时出现了bug,那测试人员就需要重现bug和验证bug 所以需要重复两次操作一样,seed值相同就能确保monkey两次测试所触发的事件 一致 adb shell monkey –p app包名 –s 1001 --throttle 1000 –v-v-v 100 >C:\Users\Desktop\applog.txt:输出日志文件到本地路径 adb shell monkey –p app包名 –s 1001 --throttle 1000 –v-v-v 100 >C:\Users\Desktop\applog1.txt:输出日志文件到本地路径
![](https://www.icode9.com/i/l/?n=22&i=blog/2012893/202206/2012893-20220626180247552-300256421.png)
1. Monkey调试: 在Monkey运行的过程中,我们可以通过结束进程的方式来终止Monkey的运 行,当然在运行的过程中遇到异常、奔溃、等情况Monkey也会停止。为了保证执行 的事件数执行完整我们可以通过调试选项的设置来防止在运行过程中Monkey命令提 前结束 --ignore-crashes 忽略在应用程序出现crash(崩溃)时monkey停止 --ignore-timeouts 忽略在应用程序出现ANR(无响应)时monkey停止 --ignore-security-exceptions 忽略在应用程序出现许可时monkey停止 例如:同时忽略以上三种错误 adb shell monkey -p app包名 -s 1001 --throttle 1000 --ignore-crashes --ignore-timeouts --ignore-security-exceptions -v-v-v 100 >C:\Users\Desktop\applog1.txt
![](https://www.icode9.com/i/l/?n=22&i=blog/2012893/202206/2012893-20220626180618809-102655129.png)
. Monkey练习:
对百度阅读进行稳定性测试,要求:模拟用户的触摸操作,并执行时间12小 时,忽略crashes与anr报错,并输出日志以及稳定性测试报告 ===================================================标签:__,shell,Monkey,app,6.26,adb,测试,日志,monkey 来源: https://www.cnblogs.com/xukairoot/p/16420168.html