選取裝置集區中的私人裝置 - AWS Device Farm

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

選取裝置集區中的私人裝置

要在測試運行中使用私人設備,您可以創建一個選擇私有設備的設備池。裝置集區可讓您主要透過三種類型的裝置集區規則來選取私人裝置:

  1. 以裝置為基礎的規則 ARN

  2. 以裝置執行個體標籤為基礎的規則

  3. 以裝置執行個體為基礎的規則 ARN

在以下各節中,將深入描述每個規則類型及其使用案例。您可以使用 Device Farm 主控台、 AWS 命令列介面 (AWS CLI) 或 Device Farm,使API用這些規則建立或修改具有私人裝置的裝置集區。

裝置 ARN

裝置ARN是代表裝置類型而非任何特定實體裝置執行個體的識別碼。裝置類型由下列屬性定義:

  • 裝置的叢集 ID

  • 該設備的 OEM

  • 設備的型號

  • 裝置的作業系統版本

  • 指示裝置是否已植根的狀態

許多實體裝置執行個體可以透過單一裝置類型來表示,其中該類型的每個執行個體都具有相同的這些屬性值。例如,如果你有三個 Apple iPhone 13 iOS 版本上的設備 16.1.0 在您的私人機群中,每個裝置都會共用相同的裝置ARN。如果使用這些相同屬性從叢集新增或移除任何裝置,該裝置ARN將繼續代表您在叢集中針對該裝置類型的任何可用裝置。

此裝置ARN是為裝置集區選取私人裝置的最可靠方式,因為無論您在任何特定時間部署的特定裝置執行個體為何,裝置集區都能繼續選取裝置。個別私有裝置執行個體可能會遇到硬體故障,並提示 Device Farm 自動將其取代為相同裝置類型的新工作執行個體。在這些情況下,裝置ARN規則可確保您的裝置集區可以在硬體故障時繼續選取裝置。

當您針對裝置集區中的私人裝置使用裝置ARN規則,並使用該集區排程測試執行時,Device Farm 會自動檢查該裝置代表哪些私人裝置執行個體ARN。當前可用的實例中,其中之一將被分配運行您的測試。如果目前沒有可用的實例,Device Farm 將等待該設備的第一個可ARN用實例可用,並將其分配給運行測試。

裝置實例標籤

設備實例標籤是文本標識符,您可以將其作為設備實例的元數據附加。您可以將多個標籤附加到每個設備實例,並將相同的標籤附加到多個設備實例。如需有關從裝置執行個體新增、修改或移除裝置標籤的詳細資訊,請參閱管理私有裝置

設備實例標籤可以是為設備池選擇私有設備的一種可靠方法,因為如果您有多個具有相同標籤的設備實例,則它允許設備池中的任何一個進行測試。如果裝置ARN不是適合您使用案例的規則 (例如,如果您想要從多種裝置類型的裝置中進行選取,或者想要從某種裝置類型的所有裝置的子集中選取),則裝置執行個體標籤可讓您從多個裝置中選取更大的細微度。個別私有裝置執行個體可能會遇到硬體故障,並提示 Device Farm 自動將其取代為相同裝置類型的新工作執行個體。在這些情況下,替換裝置執行個體將不會保留已取代裝置的任何執行個體標籤中繼資料。因此,如果將相同的設備實例標籤應用於多個設備實例,則設備實例標籤規則可確保在硬件故障時,設備池可以繼續選擇設備實例。

當您對設備池中的私有設備使用設備實例標籤規則並使用該池安排測試運行時,Device FARM 將自動檢查該設備實例標籤表示的私有設備實例,以及這些實例中,隨機選擇一個可用於運行測試的實例。如果沒有可用,則 Device Farm 將隨機選擇具有設備實例標籤的任何設備實例以運行測試,並在可用時將測試排入隊列以在設備上運行。

實例 ARN

裝置執行個體ARN是代表私人叢集中部署的實體裸機裝置執行個體的識別碼。例如,如果你有三個 iPhone 13 OS 上的裝置 15.0.0 在您的私人機群中,雖然每個設備都會共享相同的設備ARN,但每個設備也會有自己的實例ARN代表該實例。

設備實例ARN是為設備池選擇私有設備的最不可靠方法,只有在設備和設備ARNs實例標籤不適合您的用例時,才建議使用該設備實例。當以獨特ARNs且特定的方式配置特定的設備實例作為測試的先決條件,以及在運行測試之前是否需要了解和驗證該配置,則設備實例通常用作設備池的規則。個別私有裝置執行個體可能會遇到硬體故障,並提示 Device Farm 自動將其取代為相同裝置類型的新工作執行個體。在這些情況下,替換設備實例將具有與替換設備不同的設備實例ARN。因此,如果您依賴設備池的設備實ARNs例,則需要手動將設備池的規則定義從使用舊的規則定義更改ARN為使用新的ARN。如果您確實需要手動預先配置設備進行測試,那麼這可能是一個有效的工作流程(與設備相比ARNs)。對於大規模測試,建議嘗試調整這些用例以使用設備實例標籤,並在可能的情況下預先配置多個設備實例以進行測試。

當您對設備池中的私有設備使用設備實例ARN規則並使用該池安排測試運行時,Device Farm 將自動將該測試分配給該設備實例。如果該設備實例不可用,則 Device Farm 將在可用時將測試排入隊列。

使用私人裝置建立私人裝置集區 (主控台)

建立測試執行時,您可以為測試執行建立一個裝置集區,並確保該集區僅包含您的私有裝置。

注意

在主控台中使用私人裝置建立裝置集區時,您只能使用三個可用規則中的任何一個來選取私人裝置。如果您想要建立包含私人裝置的多種規則類型的裝置集區 (例如,包含裝置ARNs和裝置執行個體規則的裝置集區ARNs),則需要透過CLI或建立集區API。

  1. 在開啟裝 Device Farm 主控台https://console.aws.amazon.com/devicefarm/

  2. 在 [Device Farm] 導覽面板上,選擇 [行動裝置測試],然後選擇 [專案

  3. 從清單中選擇現有專案或建立新專案。若要建立新專案,請選擇 [新增專案],輸入專案的名稱,然後選擇 [提交]。

  4. 選擇 Automated tests (自動測試),然後選擇 Create a new run (建立新執行)。精靈會逐步引導您選擇您的應用程式和設定要執行的測試的步驟。

  5. 在 [選取裝置] 步驟中,選擇 [建立裝置集區],然後輸入裝置集區的名稱和選用說明。

    1. 若要為您的裝置集區使用裝置ARN規則,請選擇 [建立靜態裝置集區],然後從清單中選取您要在裝置集區中使用的特定裝置類型。請勿僅選取私人裝置執行個體,因為此選項會使用裝置執行個體ARN規則 (而非裝置規則) 建立裝置ARN集區。

      Device selection method options for creating a static or dynamic device pool.
    2. 若要為裝置集區使用裝置執行個體標籤規則,請選擇 [建立動態裝置集區]。然後,針對您要在裝置集區中使用的每個標籤,選擇 [新增規則]。針對每個規則,選擇「執行個體標籤」做為Field,選擇「包含」做為Operator,然後將所需的裝置執行個體標籤指定為Value

      Device pool creation interface with dynamic selection method and attribute filter options.
    3. 若要為您的裝置集區使用裝置執行個體ARN規則,請選擇 [建立靜態裝置集區],然後選取 [僅私人裝置執行個體],將裝置清單限制為裝置伺服器陣列與您的 AWS 帳戶關聯的那些私人裝置執行個體。

      Device selection options for creating a static device pool with private instances.
  6. 選擇建立

使用私人裝置建立私人裝置集區 (AWS CLI)

如需搭配使用 Device Farm 的相關資訊 AWS CLI,請參閱AWS CLI 參考

使用私人裝置建立私人裝置集區 (API)

如需使用 Device Farm 的相關資訊API,請參閱自動化裝置農場