App自动化中 - 三大元素定位工具
文章转自:https://blog.csdn.net/lkm564513278/article/details/105511411
在日常android app自动化测试工作当中,使用一种工具可能难以定位到元素,今天,我来说说我平时用到的三大工具有哪些。。。
这三种工具定位的前提:
1、通过adb devices命令能够识别到至少一个android设备,
2、设备当前没有被其他应用程序占用。
第一种:android ADT自带的工具:uiautomatorviewer
android 4.2以上的版本,自带的自动化测试工框架是uiAutomator.
uiautomatorviewer就是它的元素定位工具了。
如果要用uiautomator来做自动化测试,还需要掌握java语言。
安装:
uiautomatorviewer是安卓调试工具(ADT)中的一部分。所以只需要安装ADT就可以了(不需要安装SDK)。
1、安装android studio
2、在android studio的启动页面当中,选择右下角的configure -> SDK Manager
会弹出如图:选择android SDK -> SDK Tools,按图中勾选,点击ok进入安装,安装完成即可关闭android studio。记住图中Android SDK
Location对应

使用:
1、找到ADT安装目录,在其tools/bin目录下,找到uiautomatorviewer程序,双击打开。
(ps:目前不支持jdk1.8以上的版本,为了启动成功,要安装jdk1.8的版本)
2、定位元素。
第二种:appium的appium inspector
appium是目前最流行的开源的app功能测试框架。
同时支持iOS和Android的自动化测试,也支持多语言。
安装:
只要安装appium,那么appium inspector也就有了。
appium desktop下载地址:http:apium.io/
使用:
1、启动appium desktop之后,点击右上角的第一个按钮
2、在打开如下界面当中填写相关信息
3、会根据启动参数,去打开对应的app,然后会截取app当中的页面
第三种:python版uiautomator2中的weditor
python语言实现的一个app自动化测试框架
安装:
安装uiautomator2:pip install -U uiautomator2
初始化命令(往手机上推送apk包):python -m uiautomator2 init
安装定位工具weditor:pip install -U weditor
安装完成之后,命令行运行:weditor --help确认是否安装成功。
使用:
1、命令行输入:weditor 会自动打开一个浏览器,如下图

2、选择Android,输入设备序列号,点击connect。点击Dump Hierarchy,就可以看到元素的信息了。
总结:
以上三种定位告诉你:任何一个app自动化测试的框架,都会给你提供一个对应的定位工具!
android自带的UIAutomator测试框架,提供 uiAutomatorViewer,
appium测试框架,提供appium inspector,
python实现的uiAutomator2测试框架,提供weditor。
在app自动化测试的过程中,可以使用任意一种或多种来帮你进行元素定位
App自动化中 - 三大元素定位工具的更多相关文章
- APP 自动化之appium元素定位(三)
APP自动化测试关键环节--元素定位,以下我们来了解appium提供的元素定位方法! 1. id定位,id一个控件的唯一标识,由开发人员在项目中指定,如果一个元素有对应的resource-id,我们就 ...
- Python自动化中的元素定位xpath(二)
1.Xpath元素定位 1)ele = b.find_element_by_xpath(‘/html/body/from/input[1]’) 2)Ele = b.find_element_by_xp ...
- Python自动化中的元素定位(一)
1.使用selenium中的webdriver模块对浏览器进行操作 1)from selenium import webdriver 加载模块 2)b = webdriver.Friefox() 打开 ...
- 『与善仁』Appium基础 — 17、元素定位工具(一)
目录 1.uiautomatorviewer介绍 2.uiautomatorviewer工具打开方式 3.uiautomatorviewer布局介绍 4.uiautomatorviewer工具的使用 ...
- 『与善仁』Appium基础 — 18、元素定位工具(二)
目录 1.Appium Inspector介绍 2.Appium Inspector打开方式 3.Appium Inspector布局介绍 4.Appium Inspector工具的配置 5.Appi ...
- 『与善仁』Appium基础 — 19、元素定位工具(三)
目录 1.Chrome Inspect介绍 2.Chrome Inspect打开方式 3.Chrome Inspect工具的使用 (1)Chrome Inspect工作前提 (2)Chrome Ins ...
- appium自动化测试之UIautomatorviewer元素定位
appium自动化测试之UIautomatorviewer元素定位 标签(空格分隔): uiautomatorviewer元素定位 前面的章节,已经总结了怎么搭建环境,怎样成功启动一个APP了,这里具 ...
- appium 元素定位工具
两种元素定位工具: 1.uiautomatorviewer是android-sdk自带的一个元素定位工具,目录D:\androidsdk\androidsdk\tools\bin . 双击启动uiau ...
- appium元素定位工具
appium元素定位工具介绍 使用uiautomatorviewer定位工具 使用Appium Inspector定位工具 使用uiautomatorviewer定位工具 谷歌在Android S ...
- (appium+python)UI自动化_03_元素定位工具
前言 在UI自动化过程中,需要对手机app上的元素进行定位,然后进一步编写自动化脚本操作app.定位元素首先需要定位工具来辅助查看页面元素.小编常用的定位工具有2种,分别是uiautomatorvie ...
随机推荐
- three.js一步一步来--如何画出一个逃跑的圆柱体
代码如下 <template> <div style="width:1000px; height:800px"> <p>逃跑的圆柱体</p ...
- sync/atomic 原子操作使用与解析
目录 前言 1. 引入 2. sync.atomic 原子操作 2.1 什么是原子操作 2.2 各种 API 的作用 2.2.1 Store 操作 2.2.2 Load 操作 2.2.3 Add 操作 ...
- 【Django drf】视图层大总结 ViewSetMixin源码分析 路由系统 action装饰器
目录 九个视图子类 视图集 继承ModelViewSet类写五个接口 继承 ReadOnlyModelView编写2个只读接口 ViewSetMixin源码分析 查找as_view方法 setattr ...
- 一键部署nfs、rsync、sersync
一键部署nfs.rsync.sersync 项目代码: 链接:https://pan.baidu.com/s/13I0BBAYsdK-KmPekZ5VpdA 提取码:u2tw --来自百度网盘超级会员 ...
- you-get下载B站视频
you-get下载B站视频 库存 you-get介绍 https://github.com/soimort/you-get you-get是一个命令行工具,可以下载知名网站的视频 支持的网站有 ht ...
- 远程控制 todesk
最近发现的一个好用的远程连接软件 便是近些年推出来的 todesk 虽然qq的远程 和 向日葵的 远程连接也都可以达到我要实现的效果 但是体验起来的话 我个人还是觉得 todesk更好用一些 下载地址 ...
- JS 计算两个时间戳相差年月日时分秒
// JS 计算两个时间戳相差年月日时分秒 calculateDiffTime(startTime, endTime, type) { var runTime = parseInt(endTime - ...
- 【TS】函数重载--可选参数--默认参数
可选参数--默认参数 在ts中定义的数据类型,某些情况下只需要传入定义数据类型的一部分参数,比如:id .name.age.address,此时需要修改用户的名称,那么只需要传入id.name就够了: ...
- RxJava 异常时堆栈显示不正确?解决方法都在这里
本文首发我的博客,github 地址 大家好,我是徐公,今天为大家带来的是 RxJava 的一个血案,一行代码 return null 引发的. 前阵子,组内的同事反馈说 RxJava 在 debug ...
- git添加多账户(附带tortoiseGit多账号使用)
近期想在公司电脑上开发自己项目,但是电脑上已经配置过一个gitlab账户了,现在想要把自己的git账户也加进来,方便代码控制. 因为git用的比较少,还不太熟悉,都是网上找资料,边看边学边做,如有不对 ...