Check out what’s new from Firebase at Google I/O 2022. Learn more

運行 XCTest

本指南介紹瞭如何準備 XCTest 以在 Firebase 測試實驗室中進行測試。

第 1 步:配置項目的派生數據位置

Xcode 將已編譯的 iOS 工件(包括您構建的任何測試)放在 Derived Data 目錄中。如果您願意,可以保留該目錄的默認位置,但為文件選擇更易於訪問的位置通常會有所幫助,特別是如果您要經常使用 Test Lab 運行測試:

  1. 在 Xcode 中打開您的項目。
  2. 在 macOS 菜單欄中,選擇文件>項目設置...
  3. Derived Data下拉菜單從Default Location更改為Custom Location
  4. 在下拉列表下方的字段中,選擇 Xcode 將測試輸出到的位置。

第 2 步:構建通用測試文件

測試實驗室使用XCTest框架運行單元測試和 UI 測試。要在測試實驗室設備上運行您的應用程序的 XCTest,請構建它以在通用 iOS 設備上進行測試:

  1. 從 Xcode 工作區窗口頂部的設備下拉列表中,選擇通用 iOS 設備。
  2. 在 macOS 菜單欄中,選擇Product > Build For > Testing

第 3 步:打包您的應用以進行上傳

最後,通過將您構建的測試文件壓縮成.zip文件,構建並打包您的測試以上傳到測試實驗室。

  1. 要構建您的 XCTest,請在終端中使用以下命令:

    項目

    xcodebuild -project PATH/TO/YOUR_WORKSPACE.xcodeproj \
    -scheme YOUR_SCHEME \
    -derivedDataPath FOLDER_WITH_TEST_OUTPUT \
    -sdk iphoneos build-for-testing

    工作區

    xcodebuild -workspace PATH/TO/YOUR_WORKSPACE.xcworkspace \
    -scheme YOUR_SCHEME \
    -derivedDataPath FOLDER_WITH_TEST_OUTPUT \
    -sdk iphoneos build-for-testing
  2. 成功構建測試後,將其壓縮以上傳到測試實驗室:

    cd FOLDER_WITH_TEST_OUTPUT/Build/Products : \
    zip -r MyTests.zip Debug-iphoneos   YOUR_SCHEME_iphoneosDEPLOYMENT_TARGET-arm64.xctestrun
    

您還可以通過手動壓縮測試文件來打包您的測試:

  1. 打開 Finder 並導航到您為衍生數據輸出指定的目錄。

  2. 打開您為項目選擇的文件夾,然後打開其中的Build/Products文件夾。

  3. 選擇文件夾Debug-iphoneosPROJECT_NAME _iphoneos DEVELOPMENT_TARGET -arm64.xctestrun然後壓縮它們。

第 4 步(可選)在本地運行測試

在使用 Test Lab 運行測試之前,您可以使用 USB 連接的設備在本地運行它以質量檢查其行為:

xcodebuild test-without-building \
    -xctestrun "Derived Data/Build/Products/YourApp.xctestrun" \
    -destination id=your-phone-id

下一步

Firebase 控制台gcloud CLI中上傳並運行您的測試。