App自动化部署:uiautomator2

这篇具有很好参考价值的文章主要介绍了App自动化部署:uiautomator2。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

快速安装库: pip3 install 库名 -i Simple Index --trusted-host pypi.douban.com

一、appium 与uiautomator2 对比

appium缺点:

appium运行慢、时间长

在低版本的appium上获取toast(消息弹窗)需要切换automationName

uiautomator2优点:

环境搭建简单方便

执行速度很快

UI元素定位便捷好用、可视化好

获取toast非常简单

注意:uiautomatorviewer定位元素时得关掉appium server

uiautomator2支持版本:

Andorid版本 4.4+

Python版本 3.6+

二、部署:

1、安装adb

文件路径adb.zip官方版下载丨最新版下载丨绿色版下载丨APP下载-123云盘

解压后,配置环境变量

uiautomator2 定位,自动化,android,python

在文件安装目录下,输入cmd,输入adb version,出现版本号,证明安装成功。

uiautomator2 定位,自动化,android,python

2、安装python的uiautomator2库

在cmd窗口输入:

pip install -U uiautomator2

命令窗口出现successful提示证明安装成功

3、安装ATX

连接手机后,输入命令

python -m uiautomator2 init

,会提示手机安装ATX,点击允许,即可安装成功,成功后,可以看到手机上出现一个小汽车图标,这个就是atx.apk

uiautomator2 定位,自动化,android,python

4、安装weditor

在cmd窗口输入:

pip install -U weditor

若是遇到问题参考:pip install weditor安装出现报错_pip install weditor报错_十一姐的博客-CSDN博客

(1)降版本,pip install weditor==0.6.4,然后再输入命令安装

(2)打开cmd窗口输入set PYTHONUTF8=1 启用python环境编码为utf-8模式,然后再尝试pip install weditor即可安装成功最新版

(3)网络原因,多安装几次有时候就成功了

5、weditor配置

(1)安装完成后,在命令行输入weditor会自动打开浏览器,在页面上输入模拟器的设备序列号,点击Connect,然后点击Dump Hierarchy刷新,可以看到模拟器的界面

备注:序列号获取:adb devices

uiautomator2 定位,自动化,android,python

(2)连接手机,打开设置,选择开发者选项,打开USB调试和禁止权限监控(在设置里面,要是没看到‘开发者选项’,打开关于手机-对着版本号连着点10次(有的机型点击7次即可)就出来了)

三、元素定位

打开钉钉,点击UI查看器上的刷新按钮(也可以打开实时,这样会自动刷新),鼠标选中输入框,在右边就可以看到一些元素定位方式,如resourceId、Xpath等。最方便的是它可以在运行的时候,同时开着weditor UI查看器

uiautomator2 定位,自动化,android,python

四、脚本编写(为了直观,使用线性脚本)

1、创建工程

2、连接

导入uiautomator2库,取个别名u2,然后使用u2的connect_usb()方法连接

uiautomator2 定位,自动化,android,python

出现以下信息,代表连接成功

uiautomator2 定位,自动化,android,python

3、脚本

启动app,利用之上的方法获取元素定位,粘贴到这里就可以了文章来源地址https://www.toymoban.com/news/detail-676633.html

import uiautomator2 as ut
# 使用USB连接手机,connect_usb是获取的序列号
d = ut.connect_usb('NZUO55T8ZSZHSC4T')
# 检查是否连接成功,获得设备的基本信息
print(d.info)
# 启动app
d.app_start("com.alibaba.android.rimet")
# 输入用户名、密码
d(resourceId="com.alibaba.android.rimet:id/et_phone_input").set_text("111")
d(resourceId="com.alibaba.android.rimet:id/et_password").set_text("111")
# 登录
d(resourceId="com.alibaba.android.rimet:id/cb_privacy").click()
d(resourceId="com.alibaba.android.rimet:id/btn_next").click()

# 断言
assert d(text="推荐").get_text()=="推荐"
# 停止app
d.app_stop("NZUO55T8ZSZHSC4T")
# 清理环境
d.app_clear("NZUO55T8ZSZHSC4T")

到了这里,关于App自动化部署:uiautomator2的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 如何使用IOS自动化测试工具UIAutomation

    这篇文章主要介绍了UIAutomation使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值 第一部分: 熟悉Instruments的UIAutomation. 第二部分: 控件的获取及操作 第三部分: 自定义自动化脚本 xcode中自带的Instuments工具可以用来进行APP的自动化测试, 以及用于进行内

    2024年02月03日
    浏览(76)
  • Uiautomator2实现Android自动化测试详解

    目录 1、UIautomator2框架原理 2、UIautomator2使用 2.1、安装 2.2、元素定位工具-weditor 2.3、设备连接 2.4、全局配置 2.4.1、通过settings设置 2.4.2、通过属性设置 2.5、APP相关操作 2.5.1、安装应用 2.5.2、启动应用 2.5.3、等待应用启动 2.5.4、结束应用 2.5.5、卸载应用 2.5.6、获取当前上层AP

    2024年02月20日
    浏览(63)
  • 0.uiautomation自动化库的详细目录索引

    类class ListControl列表控件 TabControl标签页控制器 Keys键盘按键 Rect矩形 WindowControl窗口控件 ButtonControl按钮控件 PaneControl窗格控件 CheckBoxControl复选框控件 ToggleState切换状态 在软件开发和用户界面设计中,它通常指的是一个可以切换两种或多种不同状态的控件(如复选框、开关按

    2024年04月27日
    浏览(53)
  • 初识UI自动化(inspect.exe + uiautomation)

    目录 一、前言 二、具体内容 inspect.exe讲解 Options(选项栏) Toolbar(工具栏)  uiautomation讲解 三、总结           笔者最近也在学习关于uiautomation的相关小项目,不过在做这些自动化之前,需要首先获取你需要操作的元素的相关信息,比如:鼠标点击事件、键盘输入事件,

    2023年04月22日
    浏览(100)
  • python控制Windows桌面程序自动化模块uiautomation

    github仓库地址:GitHub - yinkaisheng/Python-UIAutomation-for-Windows: (Donot use 3.7.6,3.8.1):snake:Python 3 wrapper of Microsoft UIAutomation. Support UIAutomation for MFC, WindowsForm, WPF, Modern UI(Metro UI), Qt, IE, Firefox, Chrome ...   uiautomation封装了微软UIAutomation API,支持自动化Win32,MFC,WPF,Modern UI(Metro UI), Qt, IE, F

    2024年02月04日
    浏览(48)
  • Windows GUI自动化控制工具之python uiAutomation

    对 Windows GUI进行自动化控制的工具有很多,比如pywinauto、pyautogui、pywin32、Autoit、airtest、UIAutomation等,UI Automation API是微软提供的自动化框架,可在支持 Windows Presentation Foundation (WPF) 的所有操作系统上使用,支持的应用类型更多。本文介绍封装了UI Automation API的Python uiautomatio

    2024年02月13日
    浏览(38)
  • 【测试】Python手机自动化测试库uiautomator2和weditor的详细使用

    1.说明 我们之前在电脑操作手机进行自动化测试,基本上都是通过Appium的,这个工具确实强大,搭配谷歌官方的UiAutomator基本上可以完成各种测试,但缺点也很明显,配置环境太麻烦了,需要jdk、sdk等,后来有人在UiAutomator的基础上使用http请求rpc服务的方式做了一个uiautomato

    2024年02月09日
    浏览(64)
  • 使用 uiautomator2+pytest+allure 进行 Android 的 UI 自动化测试

    目录 前言: 介绍 pytest uiautomator2 allure 环境搭建 pytest uiautomator2 allure pytest 插件 实例 初始化 driver fixture 机制 数据共享 测试类 参数化 指定顺序 运行指定级别 重试 hook 函数 断言 运行 运行某个文件夹下的用例 运行某个方法 运行某个类 运行 P0 级 运行非 P0 级 main 方式 报告

    2024年02月16日
    浏览(72)
  • uni-app 微信小程序CI机器人自动化部署方案

    1. 微信公众平台上,在开发设置里面小程序代码,将上传代码的服务IP地址填充下,生成一个上传秘钥下载下来 2. 将下载的秘钥文件放在uni-cli 项目的根目录下 3. npm 微信官方的miniprogram-ci模块 4. 把上面的代码写到一个js 文件放在项目根目录下 5. 在package.json里面写好打包和启

    2024年02月15日
    浏览(58)
  • 移动端App自动化之触屏操作自动化

    工作中我们经常需要对应用的页面进行手势操作,比如滑动、长按、拖动等,AppiumDriver 为我们提供一个模拟手势操作的辅助类 TouchAction,可以通过它对手机屏幕进行手势操作。 具体用法参见链接:chromedriver下载地址与webview自动化关键代码 1 导入TouchAction 常用的手势操作 To

    2024年02月19日
    浏览(50)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包