uiautomator2自动化工具的下载与安装
前言:
相信很多使用appium做过APP自动化的人都深有感触:
1,安装麻烦,配置环境可能会难道不少人
2,appium运行慢、时间长
3,uiautomatorviewer定位元素时得关掉appium server
4,在低版本的appium上获取toast需要切换automationName
5,等等,更多 appium 与 uiautomator2 的区别可自行百度
uiautomator2简介:
uiautomator2是uiautomator的升级版,uiautomator是Google开发的一款用来做安卓自动化测试的Java库,uiautomator2则是将uiautomator中的接口封装成了Python库。因此它支持的语言为Python
UIAutomator2是一个可用于Android设备的U自动化测试的Python库,其底层基于谷歌官方提供的Ul Automator,可以获取屏幕上任意一个APP的任意一个控件属性,并对其进行任意操作。与谷歌原生的Ul Automator不同的是,UIAutomator2提供了便利的Python接口,允许测试人员使用Python 编写测试脚本,并且在电脑上运行时就能控制手机、完成自动化,大大提高自动化代码编写的效率。
uiautomator2是一个自动化测试开源工具,仅支持Android平台的原生应用测试。它本来是Google提供的一个自动化测试的Java库,后来发展了python-uiautomator2,封装了谷歌自带的uiautomator测试框架,提供便利的python接口,用它可以很便捷的编写python脚本来实现app的自动化测试。
GitHub源码地址: https://github.com/openatx/uiautomator2
工作原理:

1. 在移动设备上安装atx-agent(守护进程),随后atx-agent启动UlIAutomator2服务进行监听
2. 在PC上编写测试脚本并执行(相当于发送HTTP请求到移动设备的server端)
3. 移动设备通过WIFI或 USB接收到PC上发来的HTTP请求,执行指定的操作
环境准备:
python版本(PC):3.6+ python安装方法见:Python3 环境搭建 | 菜鸟教程 (runoob.com)
Andorid版本:4.4+ 现在基本都是4版本以上了,所以不必担心
ADB环境(PC):https://www.cnblogs.com/gancuimian/p/15561480.html
安装 UIAutomator2:
按下快捷键 Win+R,输入cmd、回车执行,呼出 cmd窗口输入下方命令行,回车执行,等待安装过程自动完成
pip install --pre uiautomator2
图像处理库,可用于截图(可选安装) pip install pillow

手机安装atx-agent:
这一步的目的是从github上下载atx-agent,推送到手机。
打开设置-我的手机,连续点击“版本号”数次,系统提示“已启用开发者选项”,返回设置列表;依次打开系统-开发者选项,下拉找到“USB调试”,并开启该选项,系统会出现以下提示,勾选授权并允许

电脑端打开cmd窗口,输入adb devices,查看是否能够发现设备并显示序列号

随后执行下面的命令,安装手机端所需的程序atx-agent
python -m uiautomator2 init

注意,手机上可能会弹出是否允许安装的弹窗,点击允许即可
等待安装过程自动完成,最后提示 Success,代表atx-agent初始化成功,此时手机桌面会新增名为“ATX”的应用程序,安装成功

安装weditor:weditor是脚本编写辅助工具,可以快速识别手机上的元素、查看组件信息,并且支持通过Web 界面直接操作手机,以及生成UIAutomator2代码、词试代码,方便测试人员使用
pip install -U weditor
安装过程中可能会报错,出现以下提示或者其它错误提升:

原因是weditor不支持Python 3.1以上版本直接安装,在此采取以下解决途径:
1,下载安装 Git:git安装教程及环境配置 - grigeorge - 博客园 (cnblogs.com) 或者 https://www.liaoxuefeng.com/wiki/896043488029600
2,执行如下命令(可使用Git Bash 命令窗口):
git clone https://github.com/openatx/weditor
pip3 install -e weditor
安装成功后,启动并创建桌面快捷图标: python -m weditor —shortcut
当然也可以不创建图标,用命令行启动: python -m weditor
创建完成后,桌面会出现一个WEditor快捷图标,双击就能启动了

weditor初始界面如下:
Connect 按钮用于连接没备,左侧输入框可以输入设备序列号(adb devices获得)或者IP地址(需要设备与电脑连接同一网络);
DumpHierarchy 用于进行同步,当操作手机时,页面可能未同步,可以点击该按钮进行同步(或者直接选择实时同步)。
也可以在该页面上直接操作手机,例如点击元素、输入内容、锁屏亮屏等。

下面是连接上个人手机的展示页面

weditor 的优势在于:
1,可以同时管理多个设备
2,直接在调试界面操作手机,不需要另一只手去动手机
3,自动生成 uiautotor 代码。
uiautomator2 的下载安装完毕。
如果连接设备或刷新页面时报错,如下图:

解决方法:
第一步:卸载掉手机上的 ATX “小汽车”,
第二步:执行下该命令:python -m uiautomator2 init
第三步:再次启动即可,也可使用命令启动:python -m weditor
注意:app又分为 原生页面和H5页面,通过 appium或者uiautomator2是无法定位到 H5 页面的元素的,所以还要下载一个 UC开发者工具 ;何为 uc开发者工具,可以参考:http://wjhsh.net/Sammy-chen-p-10032703.html

更新:上面uc的官网404访问不了了,估计是永久关闭了。
工具的下载可以网上搜一下,通过各种第三方渠道下载:https://www.duote.com/soft/439353.html or http://www.winwin7.com/soft/51227.html 等等
或者从我这个网盘里面下载(适用系统 Windows):
链接:https://pan.baidu.com/s/10ctrcwM8dDF5QP2yHfQsmA
提取码:ndkb
常用方法:
uiautomator2 常用方法:https://www.cnblogs.com/gancuimian/p/16947337.html
uiautomator2 常用公共方法封装:https://www.cnblogs.com/gancuimian/p/16948536.html
uiautomator2自动化工具的下载与安装的更多相关文章
- MySQL Server类型之MySQL客户端工具的下载、安装和使用
本博文的主要内容有 .MySQL Server 5.5系列的下载 .MySQL Server 5.5系列的安装 .MySQL Server 5.5系列的使用 .MySQL Server 5.5系列的卸 ...
- MySQL Server类型之MySQL客户端工具的下载、安装和使用(博主推荐)
本博文的主要内容有 .MySQL Server 5.5系列的下载 .MySQL Server 5.5系列的安装 .MySQL Server 5.5系列的使用 .MySQL Server 5.5系列的卸 ...
- MySQL Workbench类型之MySQL客户端工具的下载、安装和使用
本博文的主要内容有 .MySQL Workbench的下载 .MySQL Workbench的安装 .MySQL Workbench的使用 个人推荐,比较好的MySQL客户端工具 注意啊! 对于noi ...
- MySQL学习(一)MySQLWorkbench(MySQL可视化工具)下载,安装,测试连接,以及注意事项
PS:MySQLWorkbench是MYSQL自带的可视化工具,无论使用哪个可视化工具,其实大同小异,如果想以后走的更远的话,可以考虑使用命令行操作数据库MYSQL.可视化工具让我们初学者更能理解数据 ...
- 在Mac OS X 通过抓包、“第三方下载工具”加速下载、安装APP或系统
#!/bin/bash ######################################################################################## ...
- 微信小程序-工具的下载与安装
QQ讨论群:785071190 安装开发工具 前往 开发者工具下载页面 ,根据自己的操作系统下载对应的安装包进行安装,有关开发者工具更详细的介绍可以查看 <开发者工具介绍> .工具安装非常 ...
- 【开发工具】- Xshell工具的下载和安装
下载地址:https://www.netsarang.com/zh/free-for-home-school/ Xshell 是一个强大的安全终端模拟软件,它支持SSH1, SSH2, 以及Micro ...
- Vue自动化工具(Vue-CLI)的安装
安装VUM 前面学习了普通组件以后,接下来我们继续学习单文件组件则需要提前先安装准备一些组件开发工具.否则无法使用和学习单文件组件. 一般情况下,单文件组件,我们运行在 自动化工具vue-CLI中,可 ...
- autoIT 自动化上传/下载文件图文详解【python selenium】
情景: 在用selenium进行web页面自动化时,时不时会遇到上传附件的情况,常见的情况就是一个上传按钮,点击后弹出windows窗口,选择文件后上传,如下图1所示 图1 这种情况超出了seleni ...
- vue 组件开发、vue自动化工具、axios使用与router的使用(3)
一. 组件化开发 1.1 组件[component] 在网页中实现一个功能,需要使用html定义功能的内容结构,使用css声明功能的外观样式,还要使用js定义功能的特效,因此就产生了一个功能先关的代码 ...
随机推荐
- 2023最新版Selenium 4.6.0语法快速入门
简介 Selenium是一款强而有力的前端应用测试工具,也非常适合搭配Python作为网络爬虫的工具:Selenium可以模拟使用者所有浏览器操作的动作,包括输入文本.点击按钮及拖拽进度条等.有鑑于新 ...
- PyTorch之初级使用
使用流程①. 数据准备; ②. 模型确立; ③. 损失函数确立; ④. 优化器确立; ⑤. 模型训练及保存 模块介绍Part Ⅰ: 数据准备torch.utils.data.Dataset torch ...
- CamstarVP提交前验证
方法一: public override FormsFramework.ValidationStatus ValidateInputData(Service serviceData) { Valida ...
- go 处理json
在云原生的相关技术中, 调用 kafka 和 es等中间件,返回的结果大多是 json 格式,因此我们需要频繁的对 json 进行操作. 在go这种强类型的语言中,不同于 python 和 nodej ...
- php 反序列化字符串逃逸
这里总结一下反序列化字符串逃逸的知识点 反序列化字符串逃逸分为 被过滤后字符增多和字符减少的情况 这里就不讲之前的基础知识了 大家看其它师傅写的博客就可以了 很多师傅的文章写的都很细 现在直接就开始进 ...
- Goreplay流量回放-使用真实流量测试
介绍: 1.goreplay是一个开源的网络监控工具,它可以记录你的实时流量,并用于跟踪.负载测试.监控和详细分析. 2.goreplay 是一款从生产环境 copy 流量到测试环境的工具,且不会影响 ...
- 详解 C++ 左值、右值、左值引用以及右值引用
一.左值和右值 1.左值 [可以取地址的对象就是左值] 左值是一个表示数据的表达式,比如:变量名.解引用的指针变量.一般地,我们可以获取它的地址和对它赋值,但被 const 修饰后的左值,不能给它赋值 ...
- Vue + Element table中的某行触发enter事件后,使该行disabled
废话不罗嗦,上硬菜. 1.html下: <el-table-column label="名称" sortable> <template slot-scope=&q ...
- SQLSERVER自动备份数据库
1. 通过操作系统的定时任务执行 创建两个文件,auto.bat和auto.sql,使用bat调用sql文件中的代码段 auto.bat内容 sqlcmd -S localhost,2433 -U s ...
- 全链路压测SOP
压测模型构建:人工 线上(大促)流量数据 (数据脱敏) 日常流量数据 业务方新的特性产生的变更数据 友商做过的事情 压测模型构建:自动 流程包括:录制-清洗-回放 (目前能做好的公司非常少) 压测标准 ...