获取我们在 Firebase 峰会上发布的所有信息,了解 Firebase 可如何帮助您加快应用开发速度并满怀信心地运行应用。了解详情

运行 XCTest

本指南介绍如何准备 XCTest 以在 Firebase 测试实验室中进行测试。

第 1 步:配置项目的派生数据位置

Xcode 将已编译的 iOS 工件(包括您构建的任何测试)放在派生数据目录中。如果您愿意,可以保留该目录的默认位置,但为文件选择一个更容易访问的位置通常很有帮助,尤其是如果您要经常使用测试实验室运行测试:

  1. 在 Xcode 中打开您的项目。
  2. 在 macOS 菜单栏中,选择“文件”> “项目设置...”
  3. 派生数据下拉列表从默认位置更改为自定义位置
  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 步。(可选)在本地运行测试

在使用测试实验室运行测试之前,您可以使用 USB 连接设备在本地运行它以质量检查其行为:

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

下一步

Firebase 控制台gcloud CLI中上传并运行您的测试。