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

    xiaoxiao2022-07-12  192

    一、准备工作 一台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设备,还有所见即所得脚本编辑器 具体步骤:

    到网站下载直接打开,首次使用需要注册账号,下载链接 设备管理 界面里可以检查设备是否正常init,起停atx-agent,抓取atx-agent.log文件测试脚本->刷新设备列表->写脚本,实时界面同步,点击界面直接插入各种代码,同时支持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()

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

    最新回复(0)