如何使用 adb 命令实现自动化测试

        如何使用 adb 命令实现自动化测试

一、前提:

1.打开手机调试模式,确保手机已正常连接电脑,可在电脑上通过adb devices命令查看,结果如下说明连接成功: 
List of devices attached
90xxxxc9 device
2.确保电脑上安装sdk等相关软件,可正常使用adb命令和aapt命令

二、自动化测试辅助命令

1.获取要测试的apk包的相关信息,比如
aapt dump badging

2.对某个手机执行卸载、安装及启动应用的操作
adb uninstall 
adb install 
adb shell monkey -p -v 1

3.获取手机所有控件信息,为后面执行操作做准备
adb shell uiautomator dump /sdcard/ui.xml

4.实现对具体坐标的点击操作
adb shell input tap x y

5.获取手机应用执行时的logcat日志:
adb logcat | grep adb shell ps | grep <package> | cut -c10-15

adb logcat | find "Unity" > log.txt

6.获取应用执行时的CPU、内存等相关信息
adb shell top -n -1 | grep package
adb shell dumpsys meminfo package

 

三、各种辅助命令的详解

1.aapt dump badging 
查看apk包的packageNameversionCodeapplicationLabellauncherActivitypermission等各种详细信息,效果图如下:

 

2.adb shell uiautomator dump /sdcard/ui.xml 
可以获取手机屏幕上当前所有控件的信息并保存在sdcardui.xml文件里面,之后可通过解析ui.xml文件就可以拿到想要的控件信息,比如拿到坐标就可以做相关的点击操作

3.adb shell input tap x y
此命令模拟的是点击屏幕的事件,xy坐标对应的是真实的屏幕分辨率,比如手机屏幕分辨率为1920x1080,你想点击中间位置,假设手机横屏,则(x,y)(960,540)

4.adb logcat | grep adb shell ps | grep <package> | cut -c10-15
首先adb shell ps | grep | cut -c10-15命令获取的是你的应用执行时对应的进程id,然后通过adb logcat来抓取对应进程id的日志

 

5.adb shell top -n -1 | grep package
top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源使用情况。

 

6.adb shell dumpsys meminfo package

 

内存说明:
VSS - Virtual Set Size 虚拟耗用内存(包含共享库占用的内存)
RSS - Resident Set Size 实际使用物理内存(包含共享库占用的内存)
PSS - Proportional Set Size 实际使用的物理内存(比例分配共享库占用的内存)
USS - Unique Set Size 进程独自占用的物理内存(不包含共享库占用的内存)
一般来说内存占用大小有如下规律:VSS >= RSS >= PSS >= USS,此条命令获取的是PSS信息

猜你喜欢

转载自www.cnblogs.com/wutaotaosin/p/9647876.html
今日推荐