App自动化元素定位不到?别慌,3大工具帮你搞定!

发表于:2021-12-22 08:57

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:软件测试狂阿沐    来源:CSDN

  在日常的android app自动化测试工作当中,很多朋友在元素定位时,会遇到以下类似的报错:
  然后会来问,这是啥情况?
  一般情况下,都会送上以下亲切的关怀:
  1)adb能识别到设备吗?
  2)设备有被其它的程序在占用吗?
  3)ADT的版本正确吗?
  当朋友们对以上关怀都确认之后,反馈仍然会遇到这样的报错。
  那么为了不影响学习的热情,会提供以下三种定位工具,总有一款可以让你顺利的定位到元素哦!!
  每一种工具定位的前提:
  1、通过 adb devices命令能够识别到至少一个android设备;
  2、设备当前没有被任何其它的应用程序所占用;
  如果对软件测试、接口、自动化、性能测试、测试开发、面试经验交流。感兴趣可以810119819,群内会有不定期的发放免费的资料链接,这些资料都是从各个技术网站搜集、整理出来的,如果你有好的学习资料可以私聊发我,我会注明出处之后分享给大家。
  第一种:android ADT自带工具:uiAutormatorViewer
  文章最开始的报错截图,就是来自于这个工具啦。
  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程序,双击打开。
  例如: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#…)
  安装:
  只要安装appium,那么appium inspector也就有了。
  appium desktop下载地址:http://appium.io/
  (Ps:需要先安装nodejs,再安装appium程序哦。)
  如果对软件测试、接口、自动化、性能测试、测试开发、面试经验交流。感兴趣可以810119819,群内会有不定期的发放免费的资料链接,这些资料都是从各个技术网站搜集、整理出来的,如果你有好的学习资料可以私聊发我,我会注明出处之后分享给大家。
  使用:
  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) 所示的页面。
  2)选择Android,输入设备序列号,点击connect。点击Dump Hierarchy,就可以看到元素的信息了。
  总结:
  以上3种定位告诉你: 任何一个app自动化测试的框架,都会给你提供一个对应的定位工具哦!
  android自带的UiAutomator测试框架,提供 uiAutomatorViewer。
  appium测试框架,提供appium inspector
  python实现的uiAutomator2测试框架,提供weditor
  在app自动化测试的过程中,可以使用任意一种或多种来帮你进行元素定位。

  本文内容不用于商业目的,如涉及知识产权问题,请权利人联系51Testing小编(021-64471599-8017),我们将立即处理
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号