Check out what’s new from Firebase@ Google I/O 2021, and join our alpha program for early access to the new Remote Config personalization feature. Learn more

運行 XCTest

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

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

Xcode 將編譯的 iOS 工件(包括您構建的任何測試)放在派生數據目錄中。如果您願意,可以保留該目錄的默認位置,但是為文件選擇一個更易於訪問的位置通常會很有幫助,尤其是如果您要經常使用測試實驗室運行測試:

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

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

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

  1. 從 Xcode 工作區窗口頂部的設備下拉菜單中,選擇 Generic iOS Device。
  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 步。(可選)在本地運行您的測試

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

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

下一步

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