如何优雅地使用 Appium 元素定位工具进行移动端测试?
更多软件测试学习资料戳
简介
元素定位工具是在软件开发和自动化测试中精确定位和操作用户界面元素的工具。元素定位工具可以提供辅助定位元素、编写代码、录制用例、调试代码等功能。在移动端应用的自动化测试中,一款灵活的元素定位工具是必不可缺的,本节推荐两种定位工具,分别为官网提供的 Appium Inspetor 工具和 weditor。
Appium Inspector
Appium Inspector 是官方推荐的元素定位辅助工具。具体介绍可点击链接查看:Appium Inspector 安装、[Appium Inspector]
weditor
weditor 是 ATX 生态下的一个工具,基于 python 编写,可对 Android 和 ios 的界面进行元素定位的分析。
使用时需要注意:appium 与 weditor 不兼容,运行时需要将另一服务关闭。
weditor 安装与运行
前提:python 版本 3.6 以上。
使用 pip 工具安装:pip install -U weditor,在命令行运行 python -m weditor ,跳转到 http://localhost:17310/ 即为安装成功,命令行和页面如下图所示:
![](https://static001.geekbang.org/infoq/f5/f5f08281e1a9af7f927cafa69f791676.webp?x-oss-process=image%2Fresize%2Cp_80%2Fformat%2Cpng)
![](https://static001.geekbang.org/infoq/2a/2a70d4fb720e288970ef53810996d348.webp?x-oss-process=image%2Fresize%2Cp_80%2Fformat%2Cpng)
weditor 提供创建快捷方式,在命令行执行:weditor --shortcut,创建成功后如下所示:
![](https://static001.geekbang.org/infoq/ba/ba5d494c8c9dd022218e94065551fe9e.webp?x-oss-process=image%2Fresize%2Cp_80%2Fformat%2Cpng)
注意:
Windows 用户如果安装过程中出现 UnicodeDecodeError: 'gbk' codec can't decode byte 0xad in position 829: illegal multibyte sequence 的错误,解决方案如下:
进入 控制面板 -> 更改日期、时间或数字格式 -> 管理 -> 更改系统区域设置,将 Beta 版勾选后重启计算器再次安装即可,如下图所示:
![](https://static001.geekbang.org/infoq/8f/8f3711d4366f68d0d21e6a355c65702e.webp?x-oss-process=image%2Fresize%2Cp_80%2Fformat%2Cpng)
weditor 功能介绍
使用 adb 连接真机或者模拟器,也可在第二个输入框中输入 设备 ID 进行连接,点击 Dump Hierarchy 同步手机界面到 weditor 中,在切换页面后可以通过再次点击同步界面。成功连接到设备后的界面如下所示:
![](https://static001.geekbang.org/infoq/4c/4cc5677a3989d0f1d001eee47b5a4f34.webp?x-oss-process=image%2Fresize%2Cp_80%2Fformat%2Cpng)
Weditor 的页面分为三大部分,分别为:
设备界面:功能:提供了同步设备的详情,用户可以直接在该界面中选择元素并查看或操作。交互:用户可以在设备界面上直观地选择和操作应用程序中的元素
元素详情:功能:展示选定元素的所有属性详情,同时提供了交互选项。页面底部展示该元素的定位代码,方便开发人员定位和操作元素。交互:用户可以在该界面中详细了解所选元素的属性,并进行相关的交互操作。
代码运行:功能:用于执行对元素的交互动作,并自动生成相应的代码记录。交互:用户可以通过左侧的代码运行期执行元素的交互动作,并利用以下选项进行代码的执行和管理:单行或选中运行:选择具体需要运行的某行代码。运行按钮:连接设备运行选中的代码。结束运行:中断当前代码的执行。删除、重置代码:清空已有的元素交互代码。复制代码:方便复制代码框的内容。重启服务:将代码的运行状态重置到初始值。Hierarchy:展示设备的界面元素结构,便于更全面地了解应用程序的层级结构。Console:显示控制台日志,提供开发人员调试和信息记录的途径。
通过以上三大部分的协同工作,Weditor 提供了一个综合而强大的界面,方便开发人员快速定位、查看元素属性,并生成相应的交互代码。这种结构的优化使得用户在应用程序开发和测试过程中更加高效和便捷。
总结
Appium Inspector
weditor
推荐学习
![](https://static001.geekbang.org/infoq/fb/fbf3682e80b9c7fbae5cac58d36587a1.png)
评论