本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
自定义测试环境的主机
Device Farm 通过使用测试主机环境支持一组带有预配置软件的操作系统。在测试执行期间,Device Farm 使用动态连接到所选被测设备的 Amazon-managed 实例(主机)。此实例已完全清除,不会在两次运行之间重复使用,并在测试运行结束后终止其生成的构件。
自定义测试环境的可用测试主机
测试主机完全由设备农场管理。下表列出了当前可用和支持的自定义测试环境的设备农场测试主机。
| 设备平台 | 测试主机 | 操作系统 | 架构 | 支持的设备 |
|---|---|---|---|---|
| Android | amazon_linux_2 | Amazon Linux 2 | x86_64 |
Android6 及以上 |
| iOS | macos_tahoe |
macOS Tahoe(版本 26) |
arm64 |
iOS17 到 27 |
| iOS | macos_sequoia |
macOS Sequoia(版本 15) |
arm64 |
iOS15 到 26 |
注意
Device Farm 会定期为设备平台添加新的测试主机,以支持更新的设备操作系统版本及其依赖关系。发生这种情况时,相应设备平台的旧测试主机将终止支持。
为自定义测试环境选择测试主机
要选择所需的测试主机,请在测试规范文件的相应和ios_test_host变量中指定 Android android_test_host 和 iOS 测试主机。
您可以通过以下方式之一选择测试主机:
-
选择特定的主机 -您可以命名要使用的确切测试主机。
-
让设备农场选择 — 将测试主机设置为
default,设备农场根据设备的操作系统版本选择主机。 -
使用备用主机 — 省略该字段,Device Farm 会将旧版测试主机指定为备用主机。不推荐使用此选项。有关更多信息,请参阅旧版 iOS 测试主机。
管理测试主机是设备农场和您的共同责任。您的职责因您选择的选择类型而异。下表概述了推荐的选择类型。
有关与共担责任的更多信息 AWS,请参阅 AWS 网站上的责任
选项 1:选择特定的主机
创建测试规范文件时,请在相应的android_test_host或ios_test_host字段中提供确切的测试主机值。
例
version: 0.1 android_test_host:amazon_linux_2ios_test_host:macos_tahoephases: # ...
选项 2:让设备农场选择
您可以将测试主机设置为该值,default以让 Device Farm 根据被测设备的操作系统版本选择主机。
注意
目前,ios_test_host仅default适用于。计划android_test_host在未来的版本中提供支持。
下表显示了按设备操作系统版本划分的默认主机映射。
| 平台 | 设备操作系统版本 | 分配的测试主机 |
|---|---|---|
| iOS | 17 到 27 |
macos_tahoe |
| iOS | 15 到 16 |
macos_sequoia |
例
version: 0.1 ios_test_host: default phases: # ...
操作系统版本
每台可用的测试主机都使用设备农场当时支持的操作系统的特定版本。Device Farm 会定期使用次要版本更新和安全补丁来更新操作系统。
您可以找到测试运行期间使用的确切操作系统版本,包括次要版本。为此,请将以下代码片段添加到测试规范文件的任何阶段:
例
phases: install: commands: # The following example prints the instance's operating system version details - |- if [[ "Darwin" == "$(uname)" ]]; then echo "$(sw_vers --productName) $(sw_vers --productVersion) ($(sw_vers --buildVersion))"; else echo "$(. /etc/os-release && echo $PRETTY_NAME) ($(uname -r))"; fi