软件测试基础篇五App之adb命令
命令优势:效率高 面试会问 工具的本质也是调用命令 解决工具的能力边界
ADB可以用来安装卸载软件、管理安卓系统软件、启动测试、抓取操作日志等
一、常用命令
1、查看已连接的设备列表:adb devices
2、断开连接设备: adb disconnect 手机ip
3、无线连接设备: adb connect 手机ip(手机和电脑处于同一网段)
4、开启adb服务:adb start-server (45命令在老是设备离线或连接不上或者adb命令出现异常时候用,如果还没用数据线有问题或者长期没有关机了)
5、关闭adb服务:adb kill-server
6、获取手机日志: adb logcat > 本地文件(抓取日志以后重定向到某个文件,更容易查找)
adb logcat 不带路径查看日志 直接在窗口显示 不想看了 按 Ctrl+C 退出
'>' : 覆盖文件内容 '>>' : 追加在文件末尾
日志级别由高到低依次为:e w i d v dropbox目录下查找所有日志文件; FATAL Exception 表示crash 崩溃; ARN表示 :无响应
使用场景: 测试期间记录日志. adb logcat >本地文件
避免问题由于不确定复现步骤而导致无法复现,并且被研发拒绝.
二、安装卸载
1、安装软件包
adb install /路径/软件包文件名(-r 保留数据 -t 强制覆盖 )
例如: adb install -r -t /路径/软件包的文件名(当有软件包时可以使用-r-t)

2、卸载软件包
adb uninstall app的包名
如果卸载 app 但需要保留数据和缓存文件:adb uninstall -k (apk包名)

3、获取包名
获取手机里所有的包名: adb shell pm list packages
获取手机里所有的系统应用的包名: adb shell pm list packages -s
获取手机里所有第三方软件的包名: adb shell pm list packages -3
获取当前窗口(注意大小写区分)
Windows: adb shell dumpsys window | findstr mCurrentFocus
Mac/linux: adb shell dumpsys window | grep mCurrentFocus
4、清除缓存
adb shell pm clear 包名
三、性能命令
1、启动/停止应用
启动: adb shell am start 包名/activity名(包名是软件的标识,Activity主要描述app的某个页面)
停止: adb shell am force-stop 包名

2、获取启动时间
adb shell am start -W 包名/activity名
-W :获取时间 -S:启动前强行停止应用 (冷启动的时间) -R 数字: 启动次数(可以求几次的平均值) 注意:参数均为大写,顺序可以调整,但-R后必须是数字
例如:adb shell am start -W -S -R 5 com.tpshop.malls/com.tpshop.malls.SplashActivity
3、获取内存信息
adb shell dumpsys meminfo 包名 (可以自己写工具,表展示)

4、获取CPU(建议用工具,循环执行)
adb shell dumpsys cpuinfo (查看当前CPU占用情况) 写程序使用它
adb shell top -s 9(代表CPU)或adb shell top -s cpu(有的识别不出来)

5、获取流量消耗值
1.获取userId : adb shell dumpsys package 包名 | findstr userId
2.获取上行: adb shell cat proc/uid_stat/userId/tcp_snd
3.获取下行:adb shell cat proc/uid_stat/userId/tcp_rcv
注意:cat后的路径是固定; userId中的’i”是大写; package后不加s
四、稳定性测试(Monkey)
1、adb shell monkey -p 包名 数字 -v >本地文件
注:-v -v -v :最高级别日志
常用命令:adb shell monkey -p 包名 10000 -v -v -v –throttle 500 > 本地文件


总结:

来自:黑马课程
本文来自网络,不代表协通编程立场,如若转载,请注明出处:https://www.net2asp.com/4995c37d5d.html
