手机测试之-adb

一、 Android Debug Bridge

1.1 Android系统主要的目录

1.2 ADB工具介绍

ADB的全称为Android Debug Bridge,就是起到调试桥的作用,是Android SDK里面一个多用途调试工具,通过它可以和Android设备或模拟器通信,借助adb工具,我们可以管理设备或手机模拟器的状态。还可以进行很多手机操作,如安装软件、系统升级、运行shell命令等。其实简而言说adb就是连接Android手机与PC端的桥梁,可以让用户在电脑上对手机进行全面的操作。

1.3 ADB基本命令介绍

1、查看设备 adb devices

adb devices这个命令是查看当前连接的设备,连接到计算机的Android设备或者模拟器将会列出显示

ü device: 表示找到设备并与adb连接上

ü no device: 表示当前没有模拟器在运行,或没有找到任何设备

ü offline: 表示设备或模拟器没有与adb相连或没有响应

说明:

(1) 如果出现多个device时,说明当前有多个设备或模拟器在运行,此时使用adb时,需要用-s指定一个目标设备

(2) adb devices没有显示连接设备,可以使用一下命令

ü adb kill-server

ü adb start-server

ü adb connect 127.0.0.1:7555 连接MuMu模拟器

2、查看adb版本及设备信息

adb version 获取adb版本

adb get-serialno 获取设备的序列号

adb get-state 获取模拟器/设备的当前状态

3、安装软件 adb install + 安装包路径

adb install D:\android\com.zmhj.hehe.apk

说明: apk文件安装后临时存储在/data/local/tmp目录中

4、卸载软件 adb uninstall 文件名

adb uninstall com.zmhj.hehe

说明:

(1) 如果加-k参数,为卸载软件但是保留配置和缓存文件

(2) 应用安装目录在/data/data 例如:com.ulang.jjk

(2)包名编写规范:全小写字母,多层之间点分隔

ü 使用公司域名倒着写,后加应用名,达到:全球唯一

ü 比如:百度App 包名:com.baidu.mm

ü 比如:达内App 包名:cn.tedu.mm

l 扩展:获取安装包对应的包名?

ü adb shell pm list packages

ü adb shell pm list packages 软件名

ü aapt dump badging D:\android\com.zmhj.hehe.apk

5、从电脑上发送文件到设备 adb push 本地路径 远程路径

用push命令可以把本机电脑上的文件或者文件夹复制到设备

adb push D:\android\com.ulang.jjk.apk /data/

说明:adb可以使用选项,挑选使用某设备,常用选项?(面试题)

ü adb -d push ... 针对唯一的真机(USB数据线和PC连接) device

ü adb -e push ... 针对唯一的模拟器 emulator

ü adb -s 设备id push ...通过设备id指定具体设备 真机或模拟器

6、从设备上下载文件到电脑 adb pull 远程路径 本地路径

用pull命令可以把设备上的文件或者文件夹复制到本机电脑

adb pull /data/com.ulang.jjk.apk D:\test_apk

说明:需要在D盘下创建一个文件夹test_apk

7、在命令行中查看log信息 adb logcat

adb logcat,表示实时抓取整个手机的log信息,ctrl+c结束命令行

adb logcat [option] [filter-spec]

案例:实时持续跟踪日志并返回PC端显示,不停止

adb logcat

案例:一次读取当前日志并返回PC端显示,停止

adb logcat -d

案例:将实时抓取log信息并保存到本地log.txt文件

adb logcat > D:\logcat0.txt

案例:获取的log.txt文件中加上时间信息

adb logcat -v time > D:\logcat1.txt

案例:获取网络射频信息

adb logcat -b radio > D:\logcat2.txt

案例:获取事件消息

adb logcat -b events > D:\logcat3.txt

案例:获取log信息加上时间,显示缓冲区以及电话和系统相关的日志

adb logcat -v time -b main -b radio -b system > logcat4.txt

技巧:查看命令的帮助手册

adb logcat -help

案例:获取级别不低于E的日志,保存在D:\logcat5.txt

adb logcat -d *:E > D:\logcat5.txt


8、进入设备或模拟器的adb shell

根据日志进行分析,寻找问题:根据crash(崩溃、闪退)、anr(应用无响应)、exception(异常)、error(错误)作为线索搜索日志,找到对应进程id、包名、相对位置,根据日志查看和分析测试中隐含的、容易遗漏的、底层的缺陷。

adb命令是adb这个程序自己的命令

adb shell是Android系统自带的命令,都保存在Android系统的/system/bin目录下,命令文件本质是shell脚本

(1)查看设备系统全部进程

adb shell ps

(2)过滤进程

abd shell ps | findstr 2588

(3)查看CPU硬件的相关信息

adb shell cat /proc/cpuinfo

(4)查看内存的相关信息

adb shell cat /proc/meminfo

(5)查看I/O内存分区的相关信息

adb shell cat /proc/iomem

(6)获取手机型号

adb shell cat /system/bulid.prop | findstr "ro.product.model"

(7)获取电池电量的相关信息

adb shell dumpsys battery

(8)获取某个app的cpu占用情况

adb shell dumpsys cpuinfo | grep hehe

(9)包管理工具,获取安装包列表

adb shell pm list packages

(10)实时刷新查看Android系统的性能情况

adb shell top

行动吧,在路上总比一直观望的要好,未来的你肯定会感 谢现在拼搏的自己!如果想学习提升找不到资料,没人答疑解惑时,请及时加入扣群: 320231853,里面有各种软件测试+开发资料和技术可以一起交流学习哦。

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!

相关推荐
Wency(王斯-CUEB)2 小时前
苹果IOS26【手机空间场景模型已完成0%】+【无法载入照片】
智能手机
AORO20254 小时前
2025全新三防平板科普:5G-A+卫星通信+国产化
网络·5g·智能手机·电脑·制造·信息与通信
第七种黄昏5 小时前
前端面试-箭头函数
前端·面试·职场和发展
代码充电宝7 小时前
LeetCode 算法题【简单】20. 有效的括号
java·算法·leetcode·面试·职场和发展
海琴烟Sunshine7 小时前
leetcode 119. 杨辉三角 II python
算法·leetcode·职场和发展
wanhengidc8 小时前
云手机长期使用会消耗很多流量吗
网络·游戏·智能手机·架构·云计算
成成成成成成果10 小时前
Selenium八大元素定位实战指南
功能测试·自动化
lifewange11 小时前
幂等机制
功能测试·单元测试
Apifox.12 小时前
如何在 Apifox 中通过 AI 一键生成几十个测试用例?
人工智能·程序人生·ai·测试用例·ai编程