最好的学习,不外乎实践。关于adb和monkey,真正利用好的测试员可能并不多,可能最容易阻碍大家的就是面对复杂的教程脑壳痛。小酋今天希望用最简洁的内容,让你真正用起来。
环境安装
1、安装JDK
官网:https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
下载JDK安装包,根据安装步骤进行即可。
设置环境变量:
“我的电脑”右键菜单--->属性--->高级--->环境变量--->系统变量-->新建..
变量名:JAVA_HOME
变量值:[JDK安装主目录] 如:D:\Software\JDK8 (这里我的安装主目录)
变量名:CALSS_PATH
变量值:;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;
变量名:PATH
变量值:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;
验证是否java环境安装成功,打开cmd命令,在里面输入java、javac命令,如果出现对应的帮助信息,则证明安装成功。
注意:如果没生效,则需要重启系统(用户变量不需要重启电脑,但系统变量需要重启)
2、Android SDK的安装
1)下载地址:(关注微信公众号 51ste软件测试部落 , 在其中输入 adb工具 获取)
2)SDK的安装,解压并放到指定目录下即可,我本机的解压目录为:
D:\Software\android-sdk-windows
3)下面设置环境变量(与JDK的环境变量设置相似):
“我的电脑”右键菜单--->属性--->高级--->环境变量--->系统变量-->新建..
变量名:ANDROID_HOME
变量值:D:\Software\android-sdk-windows
找到PATH变量名—>“编辑”添加:
变量名:PATH
变量值:;%ANDROID_HOME%\platform-tools;%ANDROID_HOME%\tools;%ANDROID_HOME%\build-tools\27.0.3;
注意:当添加系统变量后,如果要验证是否生效,应该重新打开cmd键入命令,如 adb 、 aapt 确认。没有生效,则重启下电脑再次在cmd键入命令确认。
adb工具常用命令
1、连接手机确认
前提:在 开发者选项 中,启用 USB调试
然后通过USB数据线连接Android手机(这里,小酋连接的Android机型为SM-G5700)
确定是否连接设备成功,使用 adb devices -l 命令列出连接的Android设备
2、安装Android测试应用
adb install [参数] [安装APK路径]
可选参数如下:
- -l :锁定应用程序
- -r :覆盖安装
- -t :允许安装测试包(非签名包,应该带上该参数;否则会failed)
- -s :把应用程序安装到sd卡上
- -d :允许降级覆盖安装
- -p :部分应用安装
- -g :为应用程序授予所有运行时的权限
示例:adb install -t d:\ysy_260.apk
问题:当出现 adb: usage: invalid transport id
问题原因:注意adb参数顺序,如 adb -t install d:\ysy_260.apk 则会报错。一定要切记,参数放到 adb install 后面
3、卸载Android应用
adb uninstall 包名
注意:install 和 uninstall 红色地方是不一样的,install 是 xx.apk 的文件,uninstall 是这个apk文件里面具体存在的包名。
可以使用命令:adb shell pm list packages ,会出现你手机中所有安装包的包名,找到你需要卸载的就可以了。
4、apk包名不是看.apk前面的字符串,可以通过:aapt dump 命令查看apk包名、主activity、版本等信息
aapt d[ump] [—values] filename.{apk}
values可也是:
- badging :显示标签、图标和应用程序的相关描述
- permissions :显示apk所具有的系统权限
- resources :查看apk资源
- configurations :查看apk配置
- xmltree :查看xml的树形结构
- xmlstrings :查看xml中所有的string
示例:D:\TestTools\android-sdk-windows\build-tools\27.0.3>aapt dump badging d:\ysy_260.apk
5、adb常用命令
- 开启/关闭adb服务
adb start-server / adb kill-server
- 查看已安装的应用
adb shell pm list packages // 查看所有应用
adb shell pm list packages -s // 查看系统应用
adb shell pm list packages -3 // 查看三方应用
- 启动应用
adb shell am start -n 包名/相对包名的类名
如:adb shell am start -n com.example.test/.MainActivity
- 文件传输
adb pull 要获取的文件路径 存储的文件路径
adb push 要上传的文件路径 存储的文件路径
- 查看日志输出
adb logcat
- 查看屏幕分辩率
adb shell wm size
- 截屏
adb shell screencap -p 文件输出路径
更多命令,通过在cmd命令框中键入 adb命令 查看帮助信息
monkey测试
Monkey是Android自身提供的,可以通过adb shell模拟用户行为,发送一些伪随机用户事件到目标设备上。
Monkey和它的直接意思一样,可以像一个猴子一样,疯狂的输入各种随机事件到设备上,像是一个猴子在疯狂的点击设备。
既然Monkey有这样的功能,我们就可以利用它来对Android App做压力测试,可以在规定的范围内,任意随机触发各种事件,来验证App的抗压性和稳定性。这些随机事件包括:点击屏幕、滑动屏幕、各种按键等。
1、adb shell 连接手机系统,调用Android系统中命令