APP自动化之weditor工具

由于最近事情颇多,许久未更新文章。大家在做APP自动化测试过程中,可能使用的是Appium官方提供的inspect进行元素定位,但此工具调试不方便,于是今天给大家分享一款更好用的APP定位元素工具:weditor

weditor基于web网页端调试,无需下载应用包,使用起来非常方便

(一)weditor简介

weditor是基于python的查看APP元素的工具,能够提供辅助编写脚本、定位元素、调试代码等功能。相较于appium提供的inspect,使用起来更加灵活方便,便于调试

(二)如何使用

安装weditor

pip install --pre weditor

  1. 启动weditor

python -m weditor

  1. 连接设备

通过adb命令检测是否已连接设备:adb devices

  1. 设备安装atx-agent

    安装命令

    python -m uiautomator2 init

5.weditor连接手机

备注:当weditor启动后,会自动打开浏览器进入如下图页面

连接手机成功后,会自动获取连接设备的屏幕截图,查看相应的元素

(三)如何抓取页面元素

元素定位

定位元素的方法支持uiautomator的定位方法,也可以支持xpath和坐标定位:

· 1.可以查看元素的resourceId属性

· 2.自动生成xpath定位方法

· 3.支持坐标点击,根据屏幕的比例

· 4.自动生成uiautomator定位方法参考代码

· 5.可以勾选强制使用xpath

coding在线调试

1.导入uiautomator2库,并连接当前设备

复制代码
import uiautomator2 as u2
 
# 连接并启动
d = u2.connect() 
 
# 打印当前链接设备信息
print(d.info)
 
# 控制台输入结果
{'currentPackageName': 'com.addcn.android.house591', 'displayHeight': 2186

2.使用uiautomator2中的定位元素方法

复制代码
# 2.定位元素输入框,使用属性定位
# uiautomator2定位方式:d(定位方式=定位值)
 
d(description="請輸入社區/街道名稱搜尋").click()
 
# 3.在输入框输入内容,并点击提交
d(text="請輸入社區/街道名稱搜尋").send_keys('测试')
 
# 清除输入框内容
d.clear_text()
 
# 点击回车键
d.press('enter')

3.使用uiautomator2中xpath定位方法

复制代码
# 1. 定位元素点击元素,使用xpath定位
d.xpath('//*[@text="中古屋"]').click()

由于weditor定位工具是基于uiautomator2框架定位的,但里面一些元素的属性、XPath等方式同样适用于Appium框架,并且更加友好,而且能够立马进行调试的,能够大大节省调试脚本的时间

总结:

感谢每一个认真阅读我文章的人!!!

作为一位过来人也是希望大家少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助。

文档获取方式:

复制代码
加入我的软件测试交流群:632880530免费获取~(同行大佬一起学术交流,每晚都有大佬直播分享技术知识点)

这份文档,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!

以上均可以分享,只需要你搜索vx公众号:程序员雨果,即可免费领取

相关推荐
程序员三藏2 小时前
Selenium+python自动化测试:解决无法启动IE浏览器及报错问题
自动化测试·软件测试·python·selenium·测试工具·职场和发展·测试用例
Warren983 小时前
软件测试-Selenium学习笔记
java·javascript·笔记·学习·selenium·测试工具·安全
zzc9216 小时前
Wireshark获取数据传输的码元速率
网络·测试工具·wifi·wireshark·路由器·802.11n·物理层参数
小丁爱养花7 小时前
接口性能测试工具 - JMeter
测试工具·jmeter
甄超锋1 天前
python sqlite3模块
jvm·数据库·python·测试工具·django·sqlite·flask
zzc9212 天前
TLSv1.2协议与TCP/UDP协议传输数据内容差异
网络·测试工具·安全·wireshark·ssl·密钥·tlsv1.2
Jinkxs2 天前
告别“测试滞后”:AI实时测试工具在敏捷开发中的落地经验
人工智能·测试工具·敏捷流程
秃了也弱了。3 天前
WireShark:非常好用的网络抓包工具
网络·测试工具·wireshark
敲上瘾3 天前
Linux系统cgroups资源精细化控制基础
linux·测试工具·docker·压力测试·cgroups
程序员曦曦3 天前
10:00开始面试,10:06就出来了,问的问题有点变态。。。
自动化测试·软件测试·功能测试·程序人生·面试·职场和发展