跳转至

安装 UiAutomator2 驱动

如果没有驱动,你几乎无法使用 Appium,驱动是允许 Appium 自动化特定平台的接口。

Info

在本快速入门指南中,我们将自动化一个 Android 平台的应用,因为通过 Appium 进行 Android 自动化的系统要求与 Appium 本身相同(而 iOS 驱动例如,需要你使用 macOS)。

我们将使用的驱动称为 UiAutomator2 驱动。值得访问该驱动的文档并将其加入书签,因为这将是今后不可或缺的参考资料。

设置 Android 自动化要求

根据驱动的要求,除了一个运行中的 Appium 服务器,我们还需要设置以下内容:

Android SDK

  • 设置 Android SDK 要求的最简单方法是下载 Android Studio。 我们需要使用其 SDK 管理器 (设置 -> 外观和行为 -> 系统设置 -> Android SDK) 来下载以下项目:
    • Android SDK 平台(选择我们想要自动化的任何 Android 平台,例如,API 级别 30)
    • Android SDK 平台工具
  • 如果愿意,你也可以不通过 Android Studio 下载这些项目:
  • 设置 ANDROID_HOME 环境变量,指向安装 Android SDK 的目录。通常可以在 Android Studio 的 SDK 管理器中找到这个目录的路径。它将包含 platform-tools 和其他目录。

Java JDK

  • 安装 Java JDK(对于最新的 Android API 级别,需要 JDK 9,否则需要 JDK 8)。你可以从 OracleAdoptium 下载。 确保下载的是 JDK 而不是 JRE。
  • 设置 JAVA_HOME 环境变量,指向 JDK 的安装目录。它将包含 bininclude 和其他目录。

准备设备

  • 如果使用模拟器,使用 Android Studio 创建并启动一个 Android 虚拟设备 (AVD)。 你可能需要下载你想要创建的模拟器的 API 级别的系统镜像。使用 Android Studio 中的 AVD 创建向导通常是完成所有这些操作的最简单方式。
  • 如果使用真实设备,应该为开发设置并启用 USB 调试
  • 连接模拟器或设备后,你可以运行 adb devices(通过位于 $ANDROID_HOME/platform-tools/adb 的二进制文件)来验证你的设备是否显示为已连接。

一旦你的设备在 adb 中显示为已连接,并且你已验证环境变量设置正确,你就可以开始了!如果在这些步骤中遇到任何问题,请参考驱动文档,或必要时查看各种 Android 或 Java 文档网站。

此外,恭喜你:不管你是否打算,你现在已经在你的系统上设置了 Android 开发者工具链,所以你可以开始制作 Android 应用了!

安装驱动本身

由于 UiAutomator2 驱动是由核心 Appium 团队维护的,它有一个官方的驱动名称,你可以通过 Appium 扩展 CLI 轻松安装:

appium driver install uiautomator2

它应该产生类似下面的输出:

Attempting to find and install driver 'uiautomator2'
✔ Installing 'uiautomator2' using NPM install spec 'appium-uiautomator2-driver'
Driver [email protected] successfully installed
- automationName: UiAutomator2
- platformNames: ["Android"]

运行此命令将定位并安装 UiAutomator2 驱动的最新版本,使其可用于自动化。请注意,当安装时,它会告诉你哪些平台它适用(在这种情况下是 Android),以及在 Appium 会话中使用此驱动时必须使用的自动化名称(在这种情况下是 UiAutomator2appium:automationName capability)。

Note

在这个快速入门中,我们使用了 扩展 CLI 来安装 UiAutomator2 驱动,但如果你将 Appium 集成到一个 Node.js 项目中,你可能更喜欢使用 npm 来管理 Appium 及其相关驱动。要了解更多关于这种技术的信息,请访问关于管理 Appium 扩展的指南。

现在,再次启动 Appium 服务器(运行 appium),你应该看到新安装的驱动被列为可用:

[Appium] Available drivers:
[Appium]   - [email protected] (automationName 'UiAutomator2')

Android 设置完成并且 UiAutomator2 驱动已安装后,你就可以编写你的第一个测试了!现在选择你喜欢的语言并试一试: