本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
自訂測試環境的主機
Device Farm 透過使用測試主機環境,支援一組具有預先設定軟體的作業系統。在測試執行期間,Device Farm 會利用 Amazon 受管執行個體 (主機),以動態方式連線至待測的所選裝置。此執行個體會在執行之間完全清除且不重複使用,並在測試執行結束後以其產生的成品終止。
適用於自訂測試環境的測試主機
測試主機完全由 Device Farm 管理。下表列出適用於自訂測試環境的目前可用和支援的 Device Farm 測試主機。
| 裝置平台 | 測試主機 | 作業系統 | Architecture(s) | 支援的裝置 |
|---|---|---|---|---|
| Android | amazon_linux_2 | Amazon Linux 2 | x86_64 |
Android 6 及更高版本 |
| iOS | macos_sequoia |
macOS Sequoia (版本 15) |
arm64 |
iOS 15 到 26 |
注意
Device Farm 會定期為裝置平台新增測試主機,以支援較新的裝置作業系統版本及其相依性。發生這種情況時,個別裝置平台的較舊測試主機會終止支援。
作業系統版本
每個可用的測試主機都會使用 Device Farm 當時支援的特定作業系統版本。雖然我們嘗試使用最新的作業系統版本,但這可能不是最新的公開分散式版本。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
選取自訂測試環境的測試主機
您可以在測試規格檔案的適當 android_test_host 和 ios_test_host變數中指定 Android 和 iOS 測試主機。 測試規格語法
如果您未為指定的裝置平台指定測試主機選擇,則測試將在 Device Farm 已設定為指定裝置和測試組態預設值的測試主機上執行。
重要
在 iOS 18 及更低版本上測試時,若未選取主機,將使用舊版測試主機。如需詳細資訊,請參閱 上的 主題舊版 iOS 測試主機。
舉例來說,請檢閱下列程式碼片段:
version: 0.1 android_test_host:amazon_linux_2ios_test_host:macos_sequoiaphases: # ...