uiautomator2环境搭建+元素定位(安卓)
一.环境搭建
1.安装uiautomator2
在终端使用pip安装即可
pip install uiautomator2
2.安装adb
可参考:https://www.cnblogs.com/lihongtaoya/p/14970306.html
3.安装weditor
终端执行如下命令
pip install weditor==0.6.4
4.ATX
确保以上环境都搭建好之后,运行下面代码,安卓设备会自动下载安装ATX应用
import uiautomator2 as u2
# 连接启动
d = u2.connect()
print(d.info)
二.元素定位
1.weditor使用
weditor是基于浏览器的一款ui查看器,可以在测试中帮助我们来定位所需要的元素。运行的话可以终端直接输入weditor回车即可

停止ui查看ctrl+c即可停止
2.元素定位
1.定位方法
d(resourceId="android:id/title", text="移动网络") # 两个条件定位
# 或
d(resourceId="android:id/title") # 一个条件定位
2.可定位的属性
我们在选中一个元素时,Selected Element下就会显示可定位的属性,场景的属性如下。
| className | 类名 |
| index | 下标 |
| text | 文本 |
| textContains | text中包含有指定文本的元素 |
| textMatches | text符合指定正则的元素 |
| textStartsWith | text中指定文本开头的元素 |
| resourceId | 指定内容的元素 |
| package | 包名 |
| description | 描述 |
| checkable | 可检查 |
| clickable | 可点击 |
| enabled | 可激活 |
| focusable | 是否聚焦 |
| focused | 获取聚焦的元素 |
| scrollable | 是否可滚动 |
| longClickable | 可长按 |
| selected | 当前选中 |
3.xpath定位
.xpath("//*[@text='设置' and @content-desc='设置,1条通知']").click()
4.相对定位
先定位到一个元素,在来定位元素周边的元素(即:左右上下)

已”显示与亮度“为坐标,来定位”通知与状态栏“和”桌面锁屏与壁纸“
d(resourceId="android:id/title", text="显示与亮度").up(text="通知与状态栏").click() # 上
d(resourceId="android:id/title", text="显示与亮度").down(text="桌面、锁屏与壁纸").click() # 下
# d().left() # 左
# d().right() # 右
uiautomator2环境搭建+元素定位(安卓)的更多相关文章
- web自动化01-自动化解决的问题-环境搭建-元素定位
自动化测试 概念:由程序代码代替人工完成验证系统功能的过程 解决的问题: 回归测试 压力测试 兼容性测试 提高测试效率,提升产品质量 自动化测试分类 web自动化测试 移动自动化测试 接口自动化测试 ...
- Android自动化测试-UiAutomator2环境搭建
Android自动化测试-UiAutomator环境搭建(QQ交流群:490451176) 一.环境准备 1. 安装android sdk,并配置环境变量 2. 安装android studio,国内 ...
- python3+Appium自动化12-H5元素定位环境搭建
前言 在混合开发的App中,经常会有内嵌的H5页面.那么这些H5页面元素该如何进行定位操作呢? 针对这种场景直接使用前面所讲的方法来进行定位是行不通的,因为前面的都是基于Andriod原生控件进行元素 ...
- monkeyrunner之安卓开发环境搭建(一)
在学习monkeyrunner之前,让我们先搭建好eclipse安卓开发环境. 对于程序开发人员而言,eclipse并不陌生,它提供了一个非常广阔的平台来开发程序.同样也可以用它来开发android程 ...
- ubuntu12.04下安卓编译环境搭建总结
前言: 因为工作需要,经常要编译安卓下的动态库,公司有已经搭建好环境的服务器,但是第一自己想自己搭建一下了解一个整个过程,另外,公司的服务器也经常出现问 题,导致编译不了,所以就想自己搭建环 ...
- android安卓最新快捷环境搭建(转)
现在很多视频和文章上的安卓环境搭建还是比较老的,挺麻烦.现在写快速方便的搭建: 一.下载JDK: 网址:http://www.oracle.com/technetwork/java/javase/do ...
- 零基础Android学习笔记-01 安卓开发环境搭建
安卓开发环境搭建. 1.首先准备JDK,从官网找到JDK下载地址,原来做.NET不熟悉JAVA,干脆用最新的,下载了JDK 1.7的版本.原来装过1.5还要配置环境变量什么的.但1.7好像很给力,装好 ...
- Ubuntu 12.04搭建MTK 6577 安卓开发环境
Ubuntu 12.04搭建 MTK 6577安卓开发环境 1. 下载并安装Vmware虚拟机: 2. 下载并在虚拟机上安装Ubuntu 12.04 iso 安装包:下载地址: ...
- linux下安卓编译apk环境搭建
ubuntu下linux安卓编译环境搭建. 配置好编译环境 (前提是已经安装了jdk,可以用java -verison 命令查看) 一.设置环境变量 用vi ~/.bashrc 打开编译环境 JA ...
- Java ee 与安卓环境搭建个人心得
最近加了个IT俱乐部,第一次作业就是搞定eclipse,完成Java ee 与安卓环境搭建.为此我上网看了好多教程,之前我安装了Java,可以说省了不少事,而且还了解一点安装方法.流程网上都有,但是不 ...
随机推荐
- windows 远程桌面 复制粘贴 无效
rdpclip.exe进程没有运行或运行异常. rdpclip 是让rdp协议(远程桌面协议)可以通过远程复制文件的,如果你使用rdp(3389)远程连接别人或者被别人连接,通常这个进程都会启动,他的 ...
- archlinux xfce 设置fcitx5中文输入法详细教程
1.安装fcitx5 sudo pacman -S fcitx5-im fcitx5-chinese-addons fcitx5-pinyin-zhwiki fcitx5-im 包含fcitx5的一些 ...
- #模型转换,动态规划#洛谷 1758 [NOI2009] 管道取珠
题目 分析 考虑每种情况的方案数平方之和,可以被转换成有两个人同时独立进行该游戏,问最后情况相同的方案数. 那么设 \(dp[i][j][k][o]\) 表示第一个人在上管道拿了 \(i\) 个,下管 ...
- OpenHarmony创新赛人气投票活动,最佳人气作品由你来定!
12月1日至12月15日 十大入围作品线上投票激战正酣 最佳人气作品,由你来定! 投票链接:https://forums.openharmony.cn/forum.php?mod=viewth ...
- 【中秋国庆不断更】OpenHarmony多态样式stateStyles使用场景
@Styles和@Extend仅仅应用于静态页面的样式复用,stateStyles可以依据组件的内部状态的不同,快速设置不同样式.这就是我们本章要介绍的内容stateStyles(又称为:多态样式). ...
- Java 数据类型详解与类型转换技巧
Java 数据类型 Java 中的变量必须是指定的数据类型: int myNum = 5; // 整数 float myFloatNum = 5.99f; // 浮点数 char myLetter = ...
- SQL 数据操作技巧:SELECT INTO、INSERT INTO SELECT 和 CASE 语句详解
SQL SELECT INTO 语句 SELECT INTO 语句将数据从一个表复制到一个新表中. SELECT INTO 语法 将所有列复制到新表中: SELECT * INTO newtable ...
- 医疗BI系统如何使医疗行业完成精细化管理转型?
不久前在北京召开的全国医疗管理工作会议,确定了今年的医疗管理工作重点.会议强调,推动医疗管理改革工作的过程中要对形势.规律准确把握,积极应对可能面临的挑战,以"三个转变.三个提高" ...
- HarmonyOS:NativeWindow 开发指导
场景介绍 NativeWindow是HarmonyOS本地平台化窗口,表示图形队列的生产者端.开发者可以通过NativeWindow接口进行申请和提交Buffer,配置Buffer属性信息. 针对 ...
- Spring Cloud Config:外部集中化配置管理
Spring Cloud Config:外部集中化配置管理 SpringCloud学习教程 SpringCloud Spring Cloud Config 可以为微服务架构中的应用提供集中化的外部配置 ...