Appium自动化(3) - 控件定位工具 uiautomatorviewer 和 Appium Desktop的Inspector

https://blog.csdn.net/Sily_Z/article/details/80661408

1|0工具一:UIAutomatorviewer

它是Android SDK自带的元素定位工具

%androidsdk%\tools\bin 这个目录下可以找到哦

直接双击 uiautomatorviewer.bat 文件即可

目前不支持Android 8.0 以上版本,且极不稳定。

2|0工具二:Appium Desktop 自带的 Inspector 的优势

  1. 可以校验定位表达式(如:XPATH表达式)
  2. 通过设置Desired Capabilities来连接手机,比较稳定
  3. 可以模拟用户动作(如:点击,返回,滑动等操作)
  4. 可以录制一系列操作,然后转换成代码

2|1inspector 的入门使用

  1. 首先,要启动Appium Server
  2. 然后,在窗口点击右上角Start Inspector Session(如图),即可弹出一个窗口
  3. 输入好Desired Capabilities后,点击【Start Session】就可以了
{ "platformName": "android", "deviceName": "bc3ef5d5", "appPackage": "com.weico.international", "appActivity": ".activity.MainFragmentActivity", "noReset": true, "newCommandTimeout": 6000 }


2|2Inspector 定位控件界面的详细介绍

1|0红色圈:手机的截图页面

1|0黄色圈:顶部操作栏

从左往右的按钮依次是

  • Select Element:选择元素
  • Swipe By Coordinates:选择滑动的起始和结束位置(后面说)
  • Tap By Coordinates:使得手机界面变换可操作状态,可以点击界面的元素
  • Back:模拟Android的返回键
  • Refresh Source & Screenshot:刷新页面,用来重新获取手机当前界面
  • Start Recording:录制操作
  • Search for element:校验定位表达式
  • Copy XML Source to Clipboard:复制XML树
  • Quit Session & Close Inspector:退出当前Session

1|0蓝色圈:XML树

以XML树的形式,展示界面上的控件布局

1|0绿色圈:控件属性区域

选择某个控件,在这里可以显示该控件的所有属性和值

2|3Selected Element 的详细介绍

1|0顶部的Tap、Send Keys、Clear

模拟用户的操作

  • tap:相当于点击该元素
  • send keys:输入值,针对输入框的操作
  • clear:清空所有值

1|0Find By xpath

提供了该元素的XPATH表达式

当然不推荐用哈,毕竟是绝对路径,太长了..........还是自己写吧!

1|0那串黄色背景色的英文

不建议使用XPath定位器,因为它很脆弱,建议让开发团队提供独特的可访问性定位器(即:resource-id)

1|0Attribute - Value

属性列表,后面用一篇文章单独讲解哦

2|4Search for element 的详细介绍

选择你要校验的定位类型,然后输入你写的表达式,最后【Search】,就可以看到结果了。如果找到了元素,说明表达式就是正确的。

2|5Start Recording 的详细介绍


点击开始录制之后,再点击Tap By Coordinates,进入界面可操作状态
然后就可以开始点击你想要的元素了,这个时候就开始录制了
最后在Recorder下面会显示对应的代码,右侧可以选择不同的语言


__EOF__

本文作者😎
本文链接https://www.cnblogs.com/dongye95/p/15003167.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。您的鼓励是博主的最大动力!
posted @   dongye95  阅读(218)  评论(0编辑  收藏  举报
编辑推荐:
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
点击右上角即可分享
微信分享提示