AWS Device Farm 測試動作參考 - AWS CodePipeline

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

AWS Device Farm 測試動作參考

在管道中,您可以設定測試動作,使用 AWS Device Farm 在裝置上執行和測試應用程式。Device Farm 使用裝置的測試集區和測試架構來測試特定裝置上的應用程式。如需有關 Device Farm 動作支援之測試架構類型的資訊,請參閱使用 AWS Device Farm 中的測試類型

動作類型

  • 類別:Test

  • 擁有者:AWS

  • 提供者:DeviceFarm

  • 版本:1

組態參數

AppType

必要:是

您正在測試的應用程式作業系統和類型。以下是有效值的清單:

  • iOS

  • Android

  • Web

ProjectId

必要:是

Device Farm 專案 ID。

若要尋找專案 ID,請在 Device Farm 主控台中選擇您的專案。在瀏覽器中,複製新專案URL的 。URL 包含專案 ID。專案 ID 是 URL 之後 中的值projects/。在下列範例中,專案 ID 為 eec4905f-98f8-40aa-9afc-4c1cfexample

https://<region-URL>/devicefarm/home?region=us-west-2#/projects/eec4905f-98f8-40aa-9afc-4c1cfexample/runs
應用程式

必要:是

輸入成品中應用程式檔案的名稱和位置。例如:s3-ios-test-1.ipa

TestSpec

條件式:是

輸入成品中測試規格定義檔案的位置。這是自訂模式測試的必要項目。

DevicePoolArn

必要:是

Device Farm 裝置集區 ARN。

若要取得專案ARNs的可用裝置集區,包括適用於 Top Devices ARN 的 ,請使用 AWS CLI輸入下列命令:

aws devicefarm list-device-pools --arn arn:aws:devicefarm:us-west-2:account_ID:project:project_ID
TestType

必要:是

指定測試支援的測試架構。以下是 的有效值清單TestType

  • APPIUM_JAVA_JUNIT

  • APPIUM_JAVA_TESTNG

  • APPIUM_NODE

  • APPIUM_RUBY

  • APPIUM_PYTHON

  • APPIUM_WEB_JAVA_JUNIT

  • APPIUM_WEB_JAVA_TESTNG

  • APPIUM_WEB_NODE

  • APPIUM_WEB_RUBY

  • APPIUM_WEB_PYTHON

  • BUILTIN_FUZZ

  • INSTRUMENTATION

  • XCTEST

  • XCTEST_UI

注意

中的 動作不支援下列測試類型 CodePipeline:WEB_PERFORMANCE_PROFILEREMOTE_ACCESS_RECORDREMOTE_ACCESS_REPLAY

如需有關 Device Farm 測試類型的資訊,請參閱使用 Device Farm 中的 AWS 測試類型

RadioBluetoothEnabled

必要:否

布林值,指示是否要在測試開始時啟用藍牙。

RecordAppPerformanceData

必要:否

布林值,指示是否在測試期間記錄裝置效能資料CPU,例如 FPS、 和記憶體效能。

RecordVideo

必要:否

布林值,指示是否要在測試期間錄製影片。

RadioWifiEnabled

必要:否

布林值,指示是否要在測試開始時啟用 Wi-Fi。

RadioNfcEnabled

必要:否

布林值,指示是否要NFC在測試開始時啟用。

RadioGpsEnabled

必要:否

布林值,指示是否要GPS在測試開始時啟用。

測試

必要:否

來源位置中測試定義檔案的名稱和路徑。路徑為相對於您測試輸入成品根的相對路徑。

FuzzEventCount

必要:否

模糊測試要執行的使用者介面事件數目,介於 1 到 10,000 之間。

FuzzEventThrottle

必要:否

模糊測試在執行下一個使用者介面事件之前等待的毫秒數,介於 1 到 1,000。

FuzzRandomizerSeed

必要:否

用於隨機化使用者介面事件的模糊測試種子。使用相同的數字進行後續模糊測試會產生相同的事件序列。

CustomHostMachineArtifacts

必要:否

主機機器上存放自訂成品的位置。

CustomDeviceArtifacts

必要:否

裝置上存放自訂成品的位置。

UnmeteredDevicesOnly

必要:否

布林值,指示在此步驟中執行測試時是否只使用未計量的裝置。

JobTimeoutMinutes

必要:否

每個裝置在執行測試逾時前,會執行的分鐘數。

緯度

必要:否

以地理座標系統度數表示的裝置緯度。

經度

必要:否

以地理座標系統度數表示的裝置經度。

Input artifacts (輸入成品)

  • 成品數量: 1

  • 描述:要提供給測試動作的成品集。Device Farm 會尋找要使用的建置應用程式和測試定義。

輸出成品

  • 成品數量:0

  • 描述:輸出成品不適用於此動作類型。

動作宣告

YAML
Name: Test Actions: - Name: TestDeviceFarm ActionTypeId: null category: Test owner: AWS provider: DeviceFarm version: '1' RunOrder: 1 Configuration: App: s3-ios-test-1.ipa AppType: iOS DevicePoolArn: >- arn:aws:devicefarm:us-west-2::devicepool:0EXAMPLE-d7d7-48a5-ba5c-b33d66efa1f5 ProjectId: eec4905f-98f8-40aa-9afc-4c1cfEXAMPLE TestType: APPIUM_PYTHON TestSpec: example-spec.yml OutputArtifacts: [] InputArtifacts: - Name: SourceArtifact Region: us-west-2
JSON
{ "Name": "Test", "Actions": [ { "Name": "TestDeviceFarm", "ActionTypeId": null, "category": "Test", "owner": "AWS", "provider": "DeviceFarm", "version": "1" } ], "RunOrder": 1, "Configuration": { "App": "s3-ios-test-1.ipa", "AppType": "iOS", "DevicePoolArn": "arn:aws:devicefarm:us-west-2::devicepool:0EXAMPLE-d7d7-48a5-ba5c-b33d66efa1f5", "ProjectId": "eec4905f-98f8-40aa-9afc-4c1cfEXAMPLE", "TestType": "APPIUM_PYTHON", "TestSpec": "example-spec.yml" }, "OutputArtifacts": [], "InputArtifacts": [ { "Name": "SourceArtifact" } ], "Region": "us-west-2" },

以下相關資源可協助您使用此動作。