手机自动化测试(准备篇)

一、准备工作
一台Windows系统电脑,一部安卓手机,电脑已安装python3。
具体如何安装python3,可以参考如何入门网络爬虫,摸索一年的心里路程

二、环境搭建
2.1 安装adb
从谷歌官网下载Android Platform Tools https://developer.android.com/studio/releases/platform-tools.html,解压,并将包含adb.exe的目录加入到系统的PATH中。
如果不知道怎么加入到系统的PATH中(其实就是配置环境变量)可以参考:
win电脑怎样修改环境变量
如果官网下载不了Android Platform Tools ,可以从百度云下载
链接:https://pan.baidu.com/s/1MMyesw0JIwJh3FMeehIuKQ
提取码:c0f6

2.2 安装python-uiautomator2

Win+R运行cmd,命令行输入以下命令:

pip install --pre -U uiautomator2

2.3 设备安装atx-agent
首先数据线连接电脑,手机需要打开开发者选项,并同时打开USB调试,USB安装,命令行输入adb devices发现设备号,说明调试成功。
下一步从github下载atx-agent文件,并推送到手机。在手机上安装包名为com.github.uiautomator的apk
命令行输入:

 python -m uiautomator2 init

最后提示success,代表atx-agent初始化成功

2.4 配置手机设备参数
python-uiautomator2连接手机的方式有两种,一种是通过WIFI,另外一种是通过USB。两种方法各有优缺点。
WIFI最便利的地方要数可以不用连接数据线,USB则可以用在PC和手机网络不在一个网段用不了的情况。

2.4.1 使用WIFI连接
手机获取到手机的IP,并确保电脑可以PING通手机。手机的IP可以在设置-WIFI设置里面获取到。
比如手机的IP是192.168.0.100,连接设备的代码为

import uiautomator2 as u2
d = u2.connect('192.168.0.100')

2.4.2 使用USB连接
手机的序列号可以通过adb devices获取到,假设序列号是123456f,连接代码为

import uiautomator2 as u2
d = u2.connect('123456f')

2.5 抓取手机上应用的控件
2.5.1 测试工具选择
【推荐】AppetizerIO 所见即所得脚本编辑器
AppetizerIO 提供了对uiautomator2的深度集成,可以图形化管理ATX设备,还有所见即所得脚本编辑器
具体步骤:

  1. 到网站下载直接打开,首次使用需要注册账号,下载链接
    在这里插入图片描述
  2. 设备管理 界面里可以检查设备是否正常init,起停atx-agent,抓取atx-agent.log文件
  3. 测试脚本->刷新设备列表->写脚本,实时界面同步,点击界面直接插入各种代码,同时支持uiautomator和Appium

2.5.2 定位方式

#ResourceId定位:
 d(resourceId="com.smartisanos.clock:id/text_stopwatch").click()
#Text定位 
d(text="秒表").click()
#Description定位 
d(description="..").click()
#ClassName定位 
d(className="android.widget.TextView").click()

2.5.3 操作控件

# click
d(text="Settings").click()
# long click
d(text="Settings").long_click()
# 等待元素的出现
d(text="Settings").wait(timeout=10.0)
#截图
d.screenshot("home.jpg")
#获取图层信息
xml = d.dump_hierarchy()

更详细的操作内容,请参考官方文档

你可能感兴趣的:(手机自动化)