一、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