Developer Device Platform 裝置執行總覽

歡迎使用 Developer Device Platform Device Run,您可以在雲端中,對實體和虛擬 Android 裝置,以及實體 iOS 裝置執行測試。本頁面說明執行 Android 和 iOS 測試的共同點。如需平台專屬步驟,請參閱 Android 裝置執行iOS 裝置執行

如要使用這個 Google Cloud CLI,您必須提供 Google Cloud 專案 ID。如需指令摘要,請參閱:gcloud beta device-run

請注意,這些旗標為必填:

  • 裝置:使用 --device 指定裝置:--device shiba-35--device iphonese3-18-4
  • 測試:使用 --test 指定測試 APK 或 IPA:--test /path/to/test.apk--test /path/to/test.ipa

Android 和 iOS 測試都有下列設定選項。

輸入和輸出 Cloud Storage 路徑

  • 自訂 Cloud Storage bucket:您可以指定輸入和輸出用的自訂 Cloud Storage bucket:--bucket-name=my-custom-bucket 如果您未使用 --bucket-name= 旗標指定 Cloud Storage bucket,Google Cloud CLI 會使用名為 PROJECT_ID-devicerun 的預設 bucket。
  • 輸入檔案:使用 --test--additional-apps--xctestrun-file 標記指定本機路徑時,每次執行指令,Google Cloud CLI 都會自動將檔案複製到 gs://BUCKET_NAME/automation/inputs/DATE_TIME_FOUR_CHARS_SUFFIX/ 下的 Cloud Storage bucket,其中 BUCKET_NAME 預設為 PROJECT_ID-devicerun
  • 雲端路徑:上傳大型檔案可能需要較長時間,因此您可以直接使用 Cloud Storage gs:// 路徑參照檔案,節省上傳時間。
  • 結果檔案:輸出構件會上傳至 Cloud Storage bucket 的 gs://BUCKET_NAME/automation/sessions/session-[SESSION_ID]/ 下方。

同步和非同步執行

根據預設,提交指令會封鎖 (同步)。這個指令會等待測試完成,並列印結果摘要表格。

如要提交工作階段,並在將檔案上傳至 Cloud Storage 後立即返回,請新增 --async 標記:

Android

gcloud beta device-run sessions submit instrumentation \
  --device shiba-35 \
  --test ./ANDROID_TESTS.apk \
  --async

iOS

gcloud beta device-run sessions submit xctest \
  --device iphonese3-18-4 \
  --test ./IOS_TESTS.zip \
  --async

這會立即傳回工作階段 ID。然後使用 sessions wait 指令等待:

gcloud beta device-run sessions wait SESSION_ID

指令會封鎖,直到工作完成為止。

多部裝置

如要在多部裝置上執行相同測試,請提供 --device 標記,並以半形逗號分隔多個裝置 ID,或提供多個 --device 標記,每個標記指定不同的裝置 ID。

Android

gcloud beta device-run sessions submit instrumentation \
  --device shiba-34,tokay-36 \
  --test ./ANDROID_TESTS.apk

或:

gcloud beta device-run sessions submit instrumentation \
  --device shiba-34 \
  --device tokay-36 \
  --test ./ANDROID_TESTS.apk

iOS

gcloud beta device-run sessions submit xctest \
  --device iphonese3-18-4,iphonese3-26-3 \
  --test ./IOS_TESTS.zip

或:

gcloud beta device-run sessions submit xctest \
  --device iphonese3-18-4 \
  --device iphonese3-26-3 \
  --test ./IOS_TESTS.zip

測試逾時

限制測試的執行時間:

Android

gcloud beta device-run sessions submit instrumentation \
  --device shiba-35 \
  --test ./ANDROID_TESTS.apk \
  --instrumentation-timeout=10m

iOS

gcloud beta device-run sessions submit xctest \
  --device iphonese3-18-4 \
  --test ./IOS_TESTS.zip \
  --xctest-timeout=10m

有效範圍為 1m1h,預設值為 5m

後續步驟

使用開發人員裝置平台執行 Android 測試執行 iOS 測試