在日常的androID app自动化测试工作当中,很多朋友在元素定位时,会遇到以下类似的报错:
然后会来问,这是啥情况?
一般情况下,都会送上以下亲切的关怀:
1)adb能识别到设备吗?
2)设备有被其它的程序在占用吗?
3)ADT的版本正确吗?
当朋友们对以上关怀都确认之后,反馈仍然会遇到这样的报错。
那么为了不影响学习的热情,会提供以下三种定位工具,总有一款可以让你顺利的定位到元素哦!!
每一种工具定位的前提:
1、通过 adb devices命令能够识别到至少一个androID设备;
2、设备当前没有被任何其它的应用程序所占用;
第一种:androID ADT自带工具:uiautormatorVIEwer
文章最开始的报错截图,就是来自于这个工具啦。
androID 4.2以上的版本,自带的自动化测试框架是uiautomator。
uiautomatorVIEwer就是它的元素定位工具了。
如果要用Uiautomator来做自动化测试,就需要掌握java语言了。
@H_404_47@安装:uiautomatorVIEwer是安卓调试工具(ADT)中的一部分。所以只需要安装ADT就可以了(不需要安装SDK哦)。
1) 安装AndroID Studio
2)在AndroID Studio的启动页面当中,选择右下角的Configure -> SDK Manager
会d出下图:选择AndroID SDK -> SDK Tools ,按图中勾选,点击OK进入安装,安装完成即可关闭AndroID Studio。 记住图中AndroID SDK Location对应
@H_404_47@使用:
1、找到ADT安装目录,在其tools/bin目录下,找到uiautomatorVIEwer程序,双击打开。
例如:ADT的目录为:/Users/liyuan/library/AndroID/sdk
(Ps: 亲测目前不支持jdk1.8以上的版本。所以为了启动成功,要安装jdk1.8的版本。
mac下若安装了jdk11和jdk1.8,需要编辑uiautomatorvIEwer文件,找到javaCmd="java",
修改为 javaCmd="/library/Java/JavaVirtualMachines/jdk1.8.0_231.jdk/Contents/Home/bin/java"
/library/Java/JavaVirtualMachines/jdk1.8.0_231.jdk/Contents/Home/bin/java为jdk1.8版本对应的java.)
2)定位元素。
第二种:appium的appium inspector
appium是目前最流行的开源的app功能测试框架。
同时支持IOS和AndroID的自动化测试,也支持多语言(python/java/C#......)
@H_404_47@安装:只要安装appium,那么appium inspector也就有了。
appium desktop下载地址:http://appium.io/
(Ps:需要先安装nodeJs,再安装appium程序哦。)
@H_404_47@使用:
1) 启动appium desktop之后,点击右上角的第一个按钮
2)在打开如下界面当中,按图中所示,填写信息:
3)会根据启动参数,去打开对应的app,然后会截取app当中的页面。
第三种:python版uiautomator2中的weditor
python语言实现的一个app自动化测试框架。
@H_404_47@安装:安装uiautomator2:pip install -U uiautomator2
初始化命令(往手机上推送apk包):python -m uiautomator2 init
安装定位工具weditor: pip install -U weditor
安装完成之后:命令行运行:weditor --help确认是否安装成功。
@H_404_47@使用:
1) 命令行输入:weditor 会自动打开在浏览器当中打开一个2) 所示的页面。
2)选择AndroID,输入设备序列号,点击connect。点击Dump HIErarchy,就可以看到元素的信息了。
@H_404_47@延伸:
github地址:https://github.com/openatx/uiautomator2
柠檬班-论坛文章地址:http://www.lemfix.com/topics/346
总结:
以上3种定位告诉你: 任何一个app自动化测试的框架,都会给你提供一个对应的定位工具哦!
androID自带的Uiautomator测试框架,提供 uiautomatorVIEwer。
appium测试框架,提供appium inspector.
python实现的uiautomator2测试框架,提供weditor
在app自动化测试的过程中,可以使用任意一种或多种来帮你进行元素定位。
总结以上是内存溢出为你收集整理的app自动化 - 元素定位不到?别慌,3大工具帮你搞定!全部内容,希望文章能够帮你解决app自动化 - 元素定位不到?别慌,3大工具帮你搞定!所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)