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

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

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

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

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

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

  3. 以裝置實例 ARN 為基礎的規則

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

設備 ARN

設備 ARN 是代表設備類型而不是任何特定物理設備實例的標識符。裝置類型由下列屬性定義:

  • 裝置的叢集 ID

  • 該設備的 OEM

  • 設備的型號

  • 裝置的作業系統版本

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

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

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

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

裝置實例標籤

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

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

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

執行個體 ARN

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

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

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

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

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

注意

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

  1. 開啟裝置伺服器陣列主控台,https://console.aws.amazon.com/devicefarm/

  2. 在 [裝置伺服陣列] 導覽面板上,選擇行動裝置測試,然後選擇项目

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

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

  5. 對於選擇裝置步驟,選擇建立裝置集區,然後輸入裝置集區的名稱和選用說明。

    1. 若要為您的裝置集區使用裝置 ARN 規則,請選擇建立靜態裝置集區,然後從清單中選取您要在裝置集區中使用的特定裝置類型。不要選擇僅限私有設備實例因為此選項會使用設備實例 ARN 規則(而不是設備 ARN 規則)創建設備池。

    2. 要為您的設備池使用設備實例標籤規則,請選擇建立動態裝置集區。然後,對於您要在設備池中使用的每個標籤,選擇新增規則。針對每個規則,選擇實例標籤作為Field,選擇包含作為Operator,並將所需的設備實例標籤指定為Value

    3. 要為您的設備池使用設備實例 ARN 規則,請選擇建立靜態裝置集區」,然後選取僅限私有設備實例將設備列表限制為僅設備場與您關聯的私有設備實例AWS帳戶。

  6. 選擇 建立

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

如需使用裝置伺服器陣列搭配AWS CLI,請參閱AWS CLI 參考

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

如需使用裝置伺服器陣列 API 的相關資訊,請參閱自動化裝置農場