欢迎您访问365答案网,请分享给你的朋友!
生活常识 学习资料

day13-App自动化测试ADB操作

时间:2023-08-12

目录

ADB操作

安装adb

ADB命令

ADB工作过程

常用的ADB命令

1.连接android手机或模拟器

2.启动和停止server

3.获取包名和activity名

4.文件传输相关的命令

5.安装和卸载apk包

6.查询本机所有应用程序包

7.查询apk的包名和启动activity的名称

8.截取当前界面


ADB操作

安装adb

下载android SDK

配置环境变量

在Path中添加%ANDROID_HOME%

ADB命令

ADB是Android平台的调试工具。是Android开发工程师必须掌握,测试工程师在做Android测试工作也会用到。

ADB包含三个部分:

Client端:运行在开发机中,即你的开发电脑,用来发送ADB命令

Server端:同样运行在开发机器中,用来管理Client端和手机的Deamon之间的通信。

Deamon守护进程:运行在调试设备中,手机或模拟器,用来接收并执行ADB命令

ADB工作过程

client端将命令发送给server端

server端会将命令发送给deamon端

deamon端进行执行

将执行结果返回给server端

server端将结果返回给client端

常用的ADB命令

1.连接android手机或模拟器

再输入其他ADB命令之前,应该使用ADB连接android手机或模拟器。

注意,真机连接时,需要安装对应手机的手机驱动程序,打开开发者模式允许USB调试,安装完毕后可通过USB和wifi两种方式进行连接。虚拟机上打开开发者的操作是:设置->关于平板电脑->版本号(快速点击3次以上)

adb connect ip:端口号(连接模拟器或真机)

adb shell(进入shell命令)

adb devices(列出当前已连接的所有设备)

2.启动和停止server

adb start-server(启动adb)

adb kill-server(停止adb)

adb kill-serveradb start-serveradb connect 127.0.0.1:7555pause

重启server 写入bat文件,adb出现问题需要重启adb server可以运行此文件

adb的端口为5037,如果发现adb无法启动可以查看是否有别的进程占用此端口

3.获取包名和activity名

包名:用于唯一标识一个app应用。(包名不是应用名,应用名可以和包名相同,但包名一定是唯一的,也不是apk名)

activity名:在android中每个界面叫一个activity,获取activity名其实就是获取界面名。

应用场景:自动化测试需要通过代码的形式告诉手机测试的是哪个应用的哪个界面,可以通过这个命令进行获取

步骤:

使用adb连接模拟器

在命令行中运行,命令,获取当前显示的activity的名字:

adb shell dumpsys window windows | findstr mFocusedApp

前一个下划线是包名,后一个下划线是activity名

4.文件传输相关的命令

从电脑发送文件到手机:

adb push 电脑文件的路径名 手机的文件夹路径

从手机中导出文件到电脑:

adb pull 手机的文件路径 电脑的文件路径

导出文件时注意一点,由于权限问题不能导出到电脑根目录(比如d盘根目录,会报错),只能导出到某个具体文件夹内(文件夹无需事先存在)

传到电脑的根目录会显示没找到文件或目录,传到根目录下的文件夹里成功

5.安装和卸载apk包

adb install apk包路径(往默认连接的手机设备上安装apk包)

adb install -r apk包路径(覆盖安装apk包)

adb -s 127.0.0.1:7555 install apk包路径(往指定连接设备安装apk包)

adb uninstall 包名(卸载程序)

6.查询本机所有应用程序包

adb shell pm list packages(本机所有应用包)

adb shell pm list packages -3 (第三方应用程序包)

7.查询apk的包名和启动activity的名称

有apk包的情况下,使用aapt工具查看(在android sdk路径下的build-tools文件夹下):

aapt dump badging apk文件路径 | findstr package(查看包名)

aapt dump badging apk文件路径 | findstr launch(查看启动activity 名)

没有apk包的情况下,直接运行adb命令查看:

adb shell dumpsys activity activitys |findstr Run

8.截取当前界面

adb shell screencap 照片保存地址(只能跟手机里的路径)

截图之后将截图拉回到本地

Copyright © 2016-2020 www.365daan.com All Rights Reserved. 365答案网 版权所有 备案号:

部分内容来自互联网,版权归原作者所有,如有冒犯请联系我们,我们将在三个工作时内妥善处理。