一、ADB调试工具
A、adb构成
client端,在电脑上,负责发送adb命令
daemon守护进程,在手机上,负责接收和执行adb命令
server端,在电脑上,负责管理client和daemon之间的通信
B、adb工作原理
1. client端将命令发送给server端
2. server端会将命令发送给daemon端
3. daemon端进行执行
4. 将执行结果,返回给server端
5. server端将结果再返回给client端
二、包名和界面名的概念
包名,对应着应用程序
界面名,对应着应用程序的某个界面,也叫做启动名
adb查看包名和界面名命令:
mac/linux:
adb shell dumpsys window windows | grep mFocusedApp
windows:
adb shell dumpsys window windows | findstr mFocusedApp
例子:
1、模拟器打开<设置>
2、输入adb命令
结果:
mFocusedApp=AppWindowToken{3f9e304a token=Token{3daea1b5 ActivityRecord{29b99ec u0 com.android.settings/.Settings t11}}}
包名:com.android.settings
界面名:.Settings
应用场景
后期,我们在告诉计算机到底打开哪一个应用和哪一个界面,必须要使用的一个写代码的参数
三、adb文件传输
发送文件到手机
命令:
adb push 电脑的文件路径 手机的文件夹路径
将aaa文件从电脑桌面上发送到手机sd卡上
adb push C:\Users\j3027\Desktop\aaa.txt /sdcard
从手机中拉取文件
adb pull 手机的文件夹路径 电脑的文件路径
应用场景:
将手机产生的文件(数据库文件,日志文件)拉取到电脑上
将aaa文件从手机sd卡上拉取到电脑桌面
adb pull /sdcard/aaa.txt C:\Users\j3027\Desktop
四、获取app启动时间
测试标准:参照同类软件,启动时间不能超过一倍即可
命令:
adb shell am start -W 包名/界面名
举例:
获取设置app中设置主界面的启动时间
adb shell am start -W com.android.settings/.Settings
结果:
Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.android.settings/.Settings }
Status: ok
Activity: com.android.settings/.Settings
ThisTime: 495
TotalTime: 495
WaitTime: 628
Complete
名词解释
ThisTime:该界面(activity)启动耗时
TotalTime:应用自身启动耗时=ThisTime+应用application等资源启动时间
WaitTime:系统启动应用耗时 = TotalTime + 系统资源启动时间
手机点击图标--> |----系统----|---application---|---activity---|<---界面展示完成
|---activity---| = ThisTime
|---application---|---activity---| = TotalTime
|----系统----|---application---|---activity---| = WaitTime
五、adb获取手机日志
命令:
adb logcat
应用场景
·|当程序发生崩溃的时候,可以将日志信息发送给开发人员,便于其快速的定位bug
。|关于崩溃的处理,需要找日志中的“at”前面的第一个字符是E的,就是错误信息
六、其他命令
adb install 路径/xx.apk |安装app到手机
adb uninstall 报名 |卸载手机上的app,需要指定包名
adb devices |获取当前电脑已经连接设备和对应的设备号
|应用场景:检查手机驱动是否安装好
adb shell |进入到安卓手机内部的linux系统命令行中
adb start-server |启动adb服务端,出bug时使用可以重启服务器,先关闭再启动
adb kill-server |停止adb服务端,出bug时使用可以重启服务器,先关闭再启动
adb --help |查看adb帮助,命令记不清楚时有用
作为一个软件测试的过来人,我想尽自己最大的努力,帮助每一个伙伴都能顺利找到工作。所以我整理了下面这份资源,现在免费分享给大家,有需要的小伙伴可以关注【公众号:开心螺蛳粉】自提!
软件测试面试文档
我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
行动吧,在路上总比一直观望的要好,未来的你肯定会感谢现在拼搏的自己!如果想学习提升找不到资料,没人答疑解惑时,请及时加入群:1150305204,里面有各种测试开发资料和技术可以一起交流哦。