本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
將適用於 iOS 的 XCTest UI 與 Device Farm 整合
Device Farm 支援 XCTest UI 測試架構。具體而言,Device Farm 支援以 Objective-C 和 Swift
XCTest UI 架構可在 iOS 開發中啟用 UI 測試,建置於 XCTest 之上。如需詳細資訊,請參閱 iOS Developer Library 中的 使用者界面測試
如需在 Device Farm 中測試的一般資訊,請參閱 AWS Device Farm 中的測試架構和內建測試。
使用以下指示,將 Device Farm 與適用於 iOS 的 XCTest UI 測試架構整合。
準備您的 iOS XCTest UI 測試
您可以上傳.ipa
檔案或 XCTEST_UI 測試套件.zip
的檔案。
.ipa
檔案是包含套件格式 iOS Runner 應用程式的應用程式封存檔。檔案內不可包含其他.ipa
檔案。
如果您上傳.zip
檔案,它可以直接包含 iOS Runner 應用程式或 .ipa
檔案。如果您想要在測試期間使用其他檔案,也可以在.zip
檔案中包含這些檔案。例如,您可以包含 或 .zip
檔案.xcworkspace
.xcodeproj
內的檔案.xctestrun
,以在裝置陣列上執行 XCUI Test Plans。有關如何執行 Test Plans 的詳細指示可在 XCUI 測試類型的預設測試規格檔案中取得。
選項 1:建立 XCTest UI .ipa 套件
當您建置專案進行測試時,Xcode 會產生 yourAppNameUITest UITest-Runner.app 套件。您可以在專案的「產品」目錄中找到該 bundle。
若要建立 .ipa 檔案:
-
建立名為
承載
的目錄。 -
將您的應用程式目錄新增至承載目錄。
-
將承載目錄封存至
.zip
檔案,然後將副檔名變更為.ipa
。
下列資料夾結構顯示名為 my-project-nameUITest-Runner.app
的範例應用程式如何封裝為 .ipa
檔案:
. └── my-project-nameUITest.ipa └── Payload (directory) └── my-project-nameUITest-Runner.app
選項 2:建立 XCTest UI .zip 套件
Device Farm 會自動為您產生執行完整 XCTest UI 測試套件.xctestrun
的檔案。如果您想要在 Device Farm 上使用自己的.xctestrun
檔案,您可以將.xctestrun
檔案和應用程式目錄壓縮為 .zip
檔案。如果您已有測試套件的檔案,您可以在這裡包含該.ipa
檔案,而不是 *-Runner.app
。
. └── swift-sample-UI.zip (directory) ├── my-project-nameUITest-Runner.app [OR] my-project-nameUITest.ipa ├── SampleTestPlan_2.xctestrun ├── SampleTestPlan_1.xctestrun └── (any other files)
如果您想要在 Device Farm 上執行 XCUI 測試的 Xcode 測試計畫,您可以建立包含 my-project-nameUITest-Runner.app 或 my-project-nameUITest.ipa 檔案的 zip,以及使用測試計畫執行 XCTEST_UI 所需的 xcode 原始程式碼檔案,包括 .xcworkspace
或 .xcodeproj
檔案。
以下是使用 .xcodeproj
檔案的範例 zip:
. └── swift-sample-UI.zip (directory) ├── my-project-nameUITest-Runner.app [OR] my-project-nameUITest.ipa ├── (any directory) └──
SampleXcodeProject.xcodeproj
├── Testplan_1.xctestplan ├── Testplan_2.xctestplan └── (any other source code files created by xcode with .xcodeproj)
以下是使用 .xcworkspace
檔案的範例 zip:
. └──swift-sample-UI.zip (directory) ├── my-project-nameUITest-Runner.app [OR] my-project-nameUITest.ipa └── (any directory) │ ├── SampleXcodeProject.xcodeproj │ ├── Testplan_1.xctestplan │ ├── Testplan_2.xctestplan | └── (any other source code files created by xcode with .xcodeproj) └──
SampleWorkspace.xcworkspace
└── contents.xcworkspacedata
注意
請確定 XCTest UI .zip 套件內沒有名為 "Payload" 的目錄。
上傳您的 iOS XCTest UI 測試
使用 Device Farm 主控台上傳您的測試。
登入 Device Farm 主控台,網址為 https://https://console.aws.amazon.com/devicefarm
。 -
在 Device Farm 導覽面板上,選擇行動裝置測試,然後選擇專案。
-
在專案清單中,選擇要上傳測試的專案。
提示
您可以使用搜尋列,依名稱篩選專案清單。
若要建立專案,請遵循 中的指示 在 AWS Device Farm 中建立專案
-
選擇建立執行。
-
在執行設定下,於執行類型區段中,選擇 iOS 應用程式。
-
在選取應用程式下,於應用程式選取選項區段中,選取上傳自己的應用程式。然後,選取上傳應用程式下的選擇檔案。
-
瀏覽並選擇您的 iOS 應用程式檔案。該檔案必須是 .ipa 檔案。
注意
請確定您的 .ipa 檔案是針對 iOS 裝置所建置,而非模擬器。
-
在設定測試下,於選取測試架構區段中,選擇 XCTest UI。然後,選取上傳應用程式下的選擇檔案。
-
瀏覽並選擇包含 iOS XCTest UI 測試執行器的 .ipa 或 .zip 檔案。
-
完成執行建立程序中剩餘的步驟。您將選取要測試的裝置,並選擇性地指定其他組態。
-
選擇建立執行。Device Farm 會執行您的測試,並在主控台中顯示結果。