美文网首页
手机界面元素定位工具uiautomatorviewer和Appi

手机界面元素定位工具uiautomatorviewer和Appi

作者: Domibaba | 来源:发表于2023-07-07 11:54 被阅读0次

      本文主要介绍如何使用工具对手机的元素进行定位,方便下一步的自动化测试用例编写。主要介绍uiautomatorviewerAppium inspector。前者只适用于Android设备,后者适用于AndroidiOS设备。本文是基于的操作系统环境是macOS,被测试设备是Android模拟器。

    • uiautomatorviewer

      uiautomatorviewerAndroid SDK自带的工具(如何安装Android SDK可以参考文章:Appium框架搭建:macOS系统下Android设备自动化测试环境搭建)的第2部分。uiautomatorviewer位于Android SDK的安装目录下的tools子目录下,Windows下双击uiautomatorviewer.batmacOSLinux下在命令行执行uiautomatorviewer

      1、在macOS下执行后,显示界面如下:

    uiautomatorviewer启动

      2、点击左上方像手机的小图标,可以连接到已经打开的Android模拟器(如何打开Android模拟器可以参考文章:Appium框架搭建:macOS系统下Android设备自动化测试环境搭建)的第3部分。连接后显示如下:

    打开一个计算器

      3、获取到被测设备的屏幕后,可以选中关注的元素,在uiautomatorviewer界面的右下方可以看到该元素的相关信息,例如resrouce idclasstext等,这些都是后续自动化脚本开发所需要的。

    • Appium inspector

      相比较于uiautomatorviewer工具只能用于Android设备,Appium inspector是跨平台的,既可以用于Android设备也可以用于iOS设备。它的原理其实就是模拟一个Appium客户端,向Appium服务端去获取被测设备的信息(Appium框架的架构简介可以参考文章Appium框架简介),因此它具备另外一个uiautomatorviewer不具备的功能,也就是它可以对被测设备进行操作的模拟,而uiautomatorviewer只能获取设备当前的屏幕信息。

      相应的,该工具的使用依赖Appium框架,因此要先安装Appium框架,可以参考Appium框架搭建:macOS系统下Android设备自动化测试环境搭建

      1、安装Appium inspector
      安装指导可以参考链接https://github.com/appium/appium-inspector

      2、启动Appium inspector,启动后首页如下

    确定首页

      3、界面可以修改为中文,View-Languages-中文

    设置中文 中文界面

      4、简单使用
    Appium inspector是通过启动一个会话来跟Appium服务器进行连接,因此在启动会话前,需要先启动Appium服务器、连接真实手机设备(或者模拟器)。这里假设已经启动Appium服务器以及手机模拟器(或真实手机)。

    • 启动Appium inspector会话
        建议会话至少要传递两个参数,一个是platformName,另一个是"appium:automationName"。使用appium driver list --installed查询我们当前使用Driver,本文显示的内容如下,是uiautomator2
    Driver查询

      因此"appium:automationName"的值是"uiautomator2","platformName"可以填"Android",具体可以参考https://github.com/appium/appium-uiautomator2-driver

      远程主机和远程端口在Appium服务器启动的时候会显示,启动Appium inspector会话后,界面如下:

    会话参数

      获取到设备的屏幕后,可以看到右侧会显示具体空间的信息。


    连接成功

    相关文章

      网友评论

          本文标题:手机界面元素定位工具uiautomatorviewer和Appi

          本文链接:https://www.haomeiwen.com/subject/mxlkudtx.html