Appium 教程8 Jan 2025 | 11 分钟阅读 ![]() Appium 教程提供了 Appium 自动化测试工具的基础和高级概念。我们的 Appium 教程专为初学者和专业人士设计。 在本教程中,我们将讨论以下主题
什么是 Appium?Appium 是一款开源的自动化移动测试工具,用于测试应用程序。它由 Sauce Labs 开发和支持,用于自动化原生和混合移动应用程序。它是一款跨平台移动自动化工具,这意味着相同的测试可以在多个平台上运行。Appium 可以轻松地并行测试多个设备。 在当今的开发领域,对移动应用程序的需求很高。目前,人们正在将他们的网站转换为移动应用程序。因此,了解移动软件自动化测试技术并与新技术保持联系非常重要。Appium 是一款目前在 移动自动化测试技术 中很受欢迎的移动应用程序测试工具。 Appium 用于自动化测试 原生、混合 和 Web 应用程序。它支持在模拟器(iOS)和模拟器(Android)以及物理设备(Android 和 iOS)上进行自动化测试。以前,该工具主要专注于 IOS 和 Android 应用程序,并且仅限于移动应用程序测试。在几个更新之前,Appium 宣布它现在也将支持 Windows 的桌面应用程序测试。 ![]() Appium 与 Selenium Webdriver 测试工具非常相似。所以,如果您已经了解 Selenium Webdriver,学习 Appium 将会非常容易。Appium 对移动设备 OS 没有依赖性,因为它有一个框架,可以将 Selenium Webdriver 命令转换为 Android 和 iOS 分别使用的 UIAutomator 和 UIAutomation 命令,这取决于设备类型而不是操作系统类型。 它支持多种语言,如 Java、PHP、Objective C、C#、Python、JavaScript(带 node.js)和 Ruby,以及更多具有 Selenium 客户端库的语言。Selenium 是 Appium 的后端,为测试需求提供 Selenium 功能控制。 Appium 的特点
Appium 的优点
Appium 的缺点除了一些特点和优点,Appium 也有一些缺点,如下所示:
解决方案:如果您在 Sauce Lab 的 移动云 中运行脚本,则可以解决此问题。目前,它允许脚本同时在多个 iOS 模拟器上运行。 Appium 架构Appium 是一个用 node.js 编写的 HTTP 服务器。它在设备上启动一个“测试用例”,该测试用例会产生一个服务器并监听来自主 Appium 服务器的代理命令。测试人员编写测试脚本以在设备或模拟器上执行。Appium 会创建并处理多个针对 Android 和 IOS 等不同平台的 webdriver 会话。 ![]() 测试人员编写的测试脚本通过将请求发送到 Appium 服务器来在模拟器或设备上执行。每个供应商,如 IOS 或 Android,都有不同的方法和机制来在设备上执行测试用例。因此,测试用例在接收到 Appium 服务器的命令后执行。Appium 使用 JSON wire 协议向 Appium 服务器发送命令请求。 Appium 如何工作?
请记住,Appium 使用另一个开源库 Selendroid 来支持旧版 API,因为 UIAutomator 只支持 API 16 或更高版本。现在我们将讨论 Appium 在不同平台上的工作方式 - Appium 在 Android 上在 Android 上,Appium 将命令代理到一个在设备上运行的 UIAutomator 脚本。UIAutomator 是 Android 的原生 UI 自动化框架,它允许您通过命令行直接在设备上运行 Junit 测试用例。虽然它使用 Java 编程语言,但 Appium 允许从任何 WebDriver 支持的语言运行它。 Android 使用 bootstrap.jar,它充当 TCP 服务器。它用于发送测试命令以使用 UIAutomator 在 Android 设备上执行操作。 在下面的图中,可以看到 Appium 架构与 Android 自动化相关的部分 - ![]() Appium 在 iOS 上就像 Android 使用 UIAutomator 一样,iOS 使用 UIAutomation。与 Android 类似,Appium 将命令代理到一个在 Mac Instruments 环境中运行的 UIAutomation 测试用例。Apple 提供了这个应用程序“Instruments”,它可以执行构建、性能分析和控制 iOS 应用程序等各种活动。另一方面,它还有一个自动化组件,您可以在其中使用 JavaScript 编写命令。它使用 UIAutomation API 与应用程序 UI 进行交互。Appium 使用相同的库来自动化 iOS 应用程序。 在下面的图中,可以看到 Appium 架构与 iOS 自动化相关的部分 - ![]() 请注意,上图中使用 bootstrap.js 代替 bootstrap.jar。它执行我们 AUT(待测应用程序)上的操作。移动应用程序的类型正如我们之前讨论过的,Appium 能够处理所有类型的应用程序,即原生、混合和 Web。让我们详细了解它们 - 原生应用程序原生应用程序是为特定平台而开发的软件程序。这些应用程序是使用特定的软件开发工具包开发的。原生应用程序是为在特定设备上使用而开发的,并且可以从 App Store(如 Google Play Store 或 Apple 的 App Store)安装。它们可以离线工作,也可以使用设备的通知系统。 一些原生应用程序的例子是 - Pinterest、Skype、Snapchat 等。 Web 应用程序Web 应用程序不是真正的应用程序,它们是在浏览器上运行的网站。这些应用程序使用 HTML、CSS 和 JavaScript 以非常低的成本开发。与 Android 和 iOS 应用程序不同,它们不需要软件开发工具包 (SDK) 供开发人员使用。Web 应用程序不是为特定平台开发的。由于 Web 应用程序在 Web 浏览器上运行,因此它们不需要任何安装。 一些 Web 应用程序的例子是 - Flipkart、Ali Express、Twitter 等。 混合应用程序混合应用程序是原生应用程序和 Web 应用程序的组合。与原生应用程序一样,这些应用程序可以从 App Store 下载,并且还可以利用设备功能,但实际上它们是内部的 Web 应用程序。它们使用 Web 开发语言 - HTML、CSS 和 JavaScript 进行开发,就像混合应用程序一样,这使得它们可以在任何平台上运行。 一些混合应用程序的例子是 - OLA、Instagram、Basecamp 等。 使用 Appium 的先决条件
在 Windows 上安装 Appium设置 Appium 不仅仅是安装一个工具或设置几个变量。完整的 Appium 设置需要安装许多其他工具。然后 Appium 开始测试应用程序。本教程主要关注 Windows 操作系统上 Android 的 Appium 设置。 安装和设置 Java使用 Appium,您需要编写可以与移动屏幕交互并控制移动应用程序中的字段(如文本框、按钮等)的自动化测试脚本,并且还可以对其执行操作。Java 用于编写这些自动化测试脚本。因此,下载最新版本的 JDK 并设置环境变量。
安装和设置 Android Studio这是下载和安装 Android Studio 最耗时的步骤之一。如果未正确完成,可能会导致 Appium 出错。在下载 Android Studio 的同时,还需要进行许多其他更改。在这里,我们建议您下载最新版本的 Android Studio。
Appium Desktop Client 的分步安装现在,在安装 Java 和 Android Studio 并为两者设置环境变量后,安装 Appium Desktop Client。Appium Studio 是一个 GUI 应用程序,用于安装 Appium 服务器。它带有安装和使用 Appium 服务器的所有先决条件。它有一个检查器,用于获取有关您的移动应用程序的基本信息。在 Windows 上安装 Appium Desktop Client 的步骤如下: 步骤 1:转到以下链接 https://appium.node.org.cn/ 并单击“下载 Appium”按钮。 ![]() 步骤 2:对于 Windows OS,下载 Appium desktop setup 的 exe 文件。所以,单击下图所示的文件。 ![]() 步骤 3:下载 exe 文件后,双击下载的文件运行。 ![]() 注意:在 Windows OS 上,您无需安装 Appium。它直接从 .exe 文件运行,而 Mac 机器需要安装 dmg。步骤 4:在这里,您需要选择安装选项。如果您系统中有多个用户,则可以选择所有用户,否则选择仅我作为系统管理员。 选择安装选项后,单击“安装”按钮。 ![]() 这将开始安装,可能需要一些时间。 步骤 5:Appium 已成功安装在您的系统上。要完成 Appium 设置,请单击“完成”按钮。 请注意,“运行 Appium”已勾选。这将启动 Appium Desktop。 ![]() 步骤 6:现在,Appium Desktop UI 将出现在屏幕上,其中包含默认的主机和端口,可以进行更改。 默认主机 - 0.0.0.0 默认端口 - 4723 单击“启动服务器”按钮并启动 Appium 服务器。 步骤 7:一个新服务器将在上一步指定的 Host 和 Port 上启动。您可以在屏幕顶部看到消息“服务器正在运行”。 ![]() 步骤 8:转到文件并单击“新建会话窗口”。 ![]() 步骤 9:在此处提供所有所需的配置,然后单击“启动会话”按钮以启动新会话。 ![]()
请注意,Microsoft Windows 不支持运行 Appium Inspector。Appium Doctor要检查 Appium 安装和依赖项,您可以从这里 https://github.com/appium/appium-doctor 下载appium-doctor。 Appium-doctor 是一个应用程序工具,用于验证 Appium 安装。它会显示您需要完成的所有缺失项。因此,当您遇到任何问题时,运行 appium-doctor 会非常有帮助。它将通过 npm 安装。 Appium 的局限性
Appium 的竞争对手有几种可用的移动应用程序自动化测试工具,如 Robotium、Appium、Experitest、Selendroid、Kobiton 和 Testdroid 等。它们都是 Appium 的强大竞争对手。但 Selendroid 和 Robotium 是 Appium 的顶级竞争对手之一。让我们了解一些差异,看看它们是如何相互区别的。 Appium vs Robotium
Appium vs Selendroid
|
我们请求您订阅我们的新闻通讯以获取最新更新。