App自动化测试笔记(二):ADB工具

一、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,里面有各种测试开发资料和技术可以一起交流哦。

  • 20
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值