如何使用移动应用程序的Appium检查器

244 阅读14分钟

简而言之:Appium Desktop = Appium Server + Inspector。当Appium Server运行自动化测试脚本时,Appium Inspector可以识别每个被测应用程序的UI元素。Appium Inspector的核心结构是确保你在开发测试脚本时发现每个可见的应用程序元素。 在你启动你的Appium Inspector之旅之前,你需要了解它的细节。

在这篇关于Appium Inspector的文章中,我们将介绍什么是Appium Inspector,为什么选择它,它的优点,Appium Inspector的规格是什么,如何集成Appium Inspector,以及更多。

Appium Inspector简介

Appium Inspector 是管理脚本记录和元素发现等任务的最全面工具。当你想自动化一个新的应用程序时,这个工具就会派上用场。众所周知,这是识别移动应用独特UI元素的标准程序。该工具一直在为Windows和OS X进行维护。

你只需下载Appium Inspector并安装,Windows和OS X版本(.app和.exe)均可使用。

为什么选择Appium Inspector?

Appium Inspector是希望识别移动应用程序UI元素的测试人员的福音。我们可以下载Appium Inspector,用它来管理以下任务。

  • 彻底了解元素的层次结构。开发人员会觉得这只是冰山一角,但对于测试人员来说,这意味着冰山本身。它为开发者提供了正确的信息,告诉他们如何将某些UI元素相互对齐,也告诉他们应用中存在哪些不同的片段/层。
  • 查找属性。Appium Inspector用于查找名称、值、描述和不同的对象/元素属性。对象由某些可识别的特征组成,我们可以通过该工具识别。然后它将直接用于XPath命令。
  • 记录手动应用程序操作。Appium Inspector让你手动记录不同的应用程序动作,以访问层次和元素,并记录它们以确保应用程序的测试脚本清晰。

你想了解更多关于XPath的信息吗?请阅读我们的XPath定位器作弊表,以更好地了解XPath定位器。

Appium Inspector的好处

当你下载Appium Inspector时,它为移动应用测试人员带来了大量好处。要实现所有这些好处,并不像以前那样费力。让我们来探讨一下。

  • 不需要安装Appium软件

对于新用户来说,Appium可能是一个难以破解的难题。许多人肯定想知道如何使用Appium检查器等事实。为了开始 Appium测试,企业移动性团队应该在每个可用于测试的工作站上安装Appium Desktop。这个过程相当漫长,但所花费的资源和时间从整体上来说是一件令人生畏的事情。

  • 远程访问设备

Appium Inspector允许你在应用测试场景中的真实移动设备上进行测试,例如用Appium Inspector编写移动测试脚本,以轻松识别对象。这为团队使用真实的Android和iOS设备进行测试提供了充分的理由。

使用内置的Appium服务器和检查器对模拟器和/或仿真器来说不是强制性的。相反,他们可以切换到真实设备来编写和运行Appium测试脚本。

  • 获得网络对象

企业移动团队会喜欢Appium Inspector,因为它可以帮助测试人员在编写Appium测试脚本时快速识别对象。除此之外,Appium Inspector还能处理Appium Desktop不支持的其他内容和应用类型,如混合应用。不过,它可以支持本地移动应用程序。

Appium Desktop Inspector的规格

基本上,Appium Desktop Inspector需要以下条件才能运行。

  1. 一台正在运行的Appium服务器,你可以通过Inspector通过网络访问它(它可以是运行在本地主机上的Appium服务器,也可以是运行在云服务上的另一台)。
  2. 每一个Appium驱动程序、插件、工具和其他你可能遇到的必需品。

如果你能够从典型的客户端库中启动一个Appium会话,你也可以通过检查器完成同样的工作。

这些是Appium桌面的规格。

  1. 要测试安卓应用程序。
  • 一台台式机或装有macOS X 10.7或Windows 10或更高版本的PC。
  • Java SE第8版或高级版本,Java开发工具包(JDK)。
  • 一个模拟器或一个iOS设备。
  • Node和npm(版本10及以上)。
  • 集成开发环境(IDE)。
  • 一个模拟器或一个Android设备。
  • Appium或Appium Desktop。
  1. 要测试iOS应用程序。
  • 一台装有macOS X 10.7或以上版本的PC。
  • Xcod-最新版本。
  • 自制软件
  • 集成开发环境(IDE)。
  • Java SE 8版或Java开发工具包(JDK)。
  • Node和npm(版本10及以上)。
  • 一个模拟器或一个iOS设备。
  • 当你在真正的iOS设备上运行Appium时,付费的、活跃的苹果开发者账户。
  • Appium或Appium Desktop。

在3000多个浏览器、设备和操作系统版本上测试你的移动应用程序。现在就试试LambdaTest吧!

开始使用Appium检查器

下图是Appium请求流程的核心架构。在你冒险了解如何使用Appium Inspector之前,了解这一点很重要。当客户端请求Appium服务器提供一组命令时,Appium Inspector会识别其中包含的移动应用元素。在到达目标系统之前,它使用一组属性来识别这些元素。这时,用户就可以执行他们原本要执行的动作。

appium request flow (1)

Appium检查过程是用来识别或定位移动应用元素的。当你需要自动化任何移动应用场景时,你可以遵循这些步骤。

第1步:定位独特的元素
第2步:执行确定的元素动作

通过Appium Inspection,你可以把第一步整理好。例如,假设你的应用程序由注册组成。下一步将是输入你的用户名和密码。Appium检查过程可以让你 "检查 "你的屏幕并识别独特的文本字段。通过这种方式,你可以在正确的字段中输入用户名和密码。

元素检查器工具来识别移动应用程序的元素

你在市场上有不同的工具,通过这些工具你可以检查你的移动应用程序元素。这些是行业中使用的顶级方法。

  • UIAutomatorViewer。这个工具由Android Studio提供,用于检查移动应用程序的元素。
  • Appium桌面检查器。最新的Appium GUI版本(Appium Desktop)支持一个内置的检查器。这个检查器对安卓和iOS应用都能派上用场,这就需要一个Mac。

如何使用UIAutomatorViewer?

这个GUI工具可以分析和扫描Android应用程序的UI组件。要用Appium自动化任何安卓应用,用户需要定位被测应用(AUT)中的对象。

  1. 你可以按照下面提到的步骤来安装和使用UIAutomatorViewer。

安装Android Studio以访问UIAutomatorViewer,它将被默认安装在其中。

UIAutomatorViewer (1)

方法1:通过命令提示符

1.1.打开命令提示符
1.2.输入uiautomatorviewer。按下 "Enter "按钮。

几秒钟后,UIAutomatorViewer窗口就会立即打开。

方法2:通过文件位置

从文件夹的位置打开UIAutomatorViewer。你可以发现UIAutomatorViewer已经被安装在系统中的.bat文件中。这种方法可以让你导航到安装文件夹的位置。打开它。这些是打开它的步骤。

2.1:使用位置 - C:Users\username\AppData\Local\Android\sdk\tools\bin (用你机器上的用户名替换 "用户名")

2.2:bin文件夹可以包含uiautomatorviewer。

2.3:选择uiautomatorviewer。这将在几秒钟内继续打开UI Automator Viewer窗口

上面提到的任何方法都可以帮助你打开UI Automator Viewer。

用USB将你的手机连接到你的系统

在你检查你的移动应用元素之前,先去把移动设备通过USB连接到你的系统。为了确保移动电话已经连接好,打开命令提示符,运行ADB设备命令。该命令将显示移动电话的设备ID。这是为了确保你已经将手机正确地连接到系统上。接下来,打开你需要检查的应用程序。

使用UI Automator Viewer检查移动应用程序

按照下面的步骤,用UI Automator Viewer检查你的移动应用程序。

  1. 点击设备屏幕截图图标,它是UI Automator Viewer屏幕的一部分。
  2. 弹出的信息可以显示进度信息。
  3. 几秒钟后,UI Automator Viewer将处理屏幕上的每一条信息。做完这些后,UI Automator Viewer将加载手机屏幕截图。
  4. 现在,把手机光标带到设备屏幕截图上。你可以在右边的窗格中得到你需要的信息

以下是正在发生的事情的要点

在你点击设备屏幕截图图标后,UI Automator Viewer将以XML格式捕捉屏幕上每个可见对象的细节。然后,它将捕捉PNG格式的移动屏幕截图。捕捉到这两个细节后,UI Automator Viewer将显示这两个细节作为用户界面的一部分。

Appium检查器是如何执行的?

Appium Desktop Inspector利用与UIAutomatorViewer类似的方法来识别移动应用程序的元素。这可以包括以下内容。

  • 通过ClassName查找元素
  • 通过ID查找元素
  • 通过XPath查找元素
  • 通过可访问性查找元素
  • 通过标签查找元素

移动元素的属性,即content-disc、resource-id、name和text对于UIAutomatorViewer和Appium Desktop Inspector是相似的。

如何在云端使用Appium检查器?

Appium还支持在远程设备上进行远程检查。目前有许多基于云的解决方案,在测试移动应用程序时提供真实的设备云,以检查UI元素。

LambdaTest是一个跨浏览器的测试平台,为企业提供一个一体化的平台,在3000多个真实的浏览器、设备和操作系统上测试他们的应用程序。通过LambdaTest for Appium Inspection,您可以获得以下好处。

  • 与您选择的不同云服务器连接。
  • 一个用户友好的GUI,让检查过程无忧无虑地完成。
  • 通过自动化功能加快Appium检查过程。
  • 获得准确的结果

了解如何在LambdaTest真实设备云上执行应用测试自动化的要点。

订阅LambdaTest YouTube频道,了解更多围绕Selenium测试、实时测试、Cypress E2E测试等的此类视频。

在LambdaTest上集成Appium Inspector

这个旨在管理移动应用程序的Appium检查器是由Appium服务器的马力运行的。Appium Desktop Inspector只不过是一个Appium客户端,如Appium的Java或Python客户端,具有高端UI。该界面可用于指定Appium服务器版本和设置的能力。一旦Appium服务器与LambdaTest应用程序集成,与不同的元素进行交互和运行其他Appium命令就变得轻而易举。

如何使用Appium Inspector进行应用测试?

在本节中,我们将演示如何使用LambdaTest平台使用Appium Inspector。它相当简单,用户友好且省时。强烈建议根据您的需求切换到云上的真实设备测试,因为它伴随着与成本和速度有关的更多好处。

上传你的应用程序

使用我们的REST API将您的应用程序(Android或iOS)上传至LambdaTest云服务器。为了实现这一点,你需要在cURL命令中提供你的LambdaTest凭证,如用户名和访问密钥,以便进行验证。

下面是一个用我们的REST API上传应用程序的cURL请求例子。另外,你可以提供一个通往本地应用程序的途径,或者提供一个应用程序的URL。

对于Android。

curl -u "LT_USERNAME:LT_ACCESS_KEY" \
--location --request POST 'https://manual-api.lambdatest.com/app/upload/realDevice' \
--form 'name="Android_App"' \
--form 'url="https://prod-mobile-artefacts.lambdatest.com/assets/docs/proverbial_android.apk"'

注意:上述curl的响应将是一个如下格式的应用程序URL,并将在下一步使用。

App URL:   lt://APP123456789123456789.

设置能力

当你启动应用程序时,Appium服务器将以0.0.0.0的默认IP地址启动,分配的端口将是4723。你需要设置Appium服务器的规格,然后从保存的能力中选择你需要的。

appium inspector (1)

你选择的集子将成为所需能力的一部分。你可以对它进行必要的修改。

appium server (1)

开始一个Appium检查器会话

选择Appium Inspector并从 云测试供应商列表中选择LambdaTest。

cloud test provider (1)

配置您的凭证

输入LambdaTest的用户名和访问密钥。你可以在你的LambdaTest简介部分找到它们。

Configuring Your Credentials

配置所需的能力并启动会话

在Appium Desktop检查器的 "期望的能力"标签下配置LambdaTest的能力。利用独特的应用程序URL,这是步骤1的一部分,用于设置应用程序能力的值。在这里,你会发现LambdaTest支持的每一项能力的列表。

Configuring the Required Capabilities

你可以访问我们的 "期望能力生成器",并使用GUI来生成 "能力表示"。

Desired Capability Generator

完成这些后,是时候运行测试了。点击 "开始会话"。

Configuring the Required Capabilities & Starting

开始会话后,你可以在LambdaTest应用程序自动化仪表板上访问带有详细信息的视频记录和测试日志。

Info and Test Logs

使用Appium桌面检查器检查UI元素

为了探索使用Appium Desktop Inspector检查UI元素,这里有一个场景,你可以打开App并检查搜索栏。当测试人员用光标突出搜索栏时,你可以得到所选元素的细节。你可以在测试脚本中使用这些细节,对指定元素进行各种测试。

Inspect UI elements using Appium Desktop Inspector

你也可以通过屏幕上提供的GUI选项,使用其元素ID、XPath、属性、包、类和文本来搜索一个元素,而不是输入代码。

Search for an Element Using its Element id

Appium检查器的局限性

与其他工具一样,Appium Desktop Inspector也有自己的一套缺点。
,下面是这些缺点。

  1. 它不允许对4.2以下版本的Android应用进行测试
  2. Appium对混合应用测试的支持较少甚至没有。它不可能测试不同的动作,让你把应用从本地切换到网络应用,以及把网络应用切换到本地。
  3. 不支持在微软Windows上直接运行Appium桌面检查器。
  4. Appium团队已经接受了它有一些需要修复的缺陷。为了解决这个问题,Appium团队推荐UIAutomatorViewer。

关于Appium Inspector的最新更新

Appium Inspector的最新版本是v2022.5.4

以下是最新的更新。

  • 在能力值和名称中使用单色字体(但要确保空白处不会成为障碍)。

  • 在静态截图的地方显示mjpeg流,并包括指向MJPEG流服务器的

    appium:mjpegScreenshotUrl
    

    能力。

  • 保存远程连接的信息和保存的功能。

在LambdaTest上注册以进行Appium测试。现在就试试LambdaTest吧!

结论

Appium Desktop的工作是为用户提供一个高端环境来管理自动化的网络、本地和混合应用测试。这是为了保护用户免受异常情况、错误和其他破坏用户体验的问题的影响。每个Appium测试都可以在不同的真实移动设备上运行,因为在真实用户条件下的应用监测可以得出100%准确的结果。

像LambdaTest这样的移动应用测试平台,可以让你以较少的晕眩过程为移动应用运行Appium测试。当你访问这个平台时,可以获得真实设备上的云支持的好处。你的测试和质量保证团队可以从一个Appium就绪的平台访问许多设备进行在线管理。有了内置的Appium支持,你的团队可以开始利用Appium来实现自动化测试。

移动测试人员不需要手动下载Appium检查器来编写和运行Appium测试,无论是并行测试还是简单测试。有了云支持,团队可以发现它比现场设置Appium Desktop更容易工作,不需要经常期待Appium专家的任何帮助或支持,或者只是为了弄清楚如何使用Appium检查器。

常见问题解答(FAQ)

什么是Appium检查器?

Appium检查器进行Appium检查,这是一个标准程序,用于识别任何移动应用程序的独特UI元素。它可以支持 Android 仿真器、iOS 仿真器和真实设备。

如何使用Appium检查器?

第一步是下载并安装Appium Inspector。它包括Windows和OS X版本(.exe和.app)。打开该应用程序时,Appium 服务器将启动,默认 IP 地址设置为 0.0。

Appium Inspector 可以在 Windows 上运行吗?

可以,它可以作为macOS、Windows和Linux的桌面应用程序运行。