本指南介绍了如何准备 XCTest 以在 Firebase 测试实验室中进行测试。
第 1 步:配置项目的派生数据位置
Xcode 将已编译的 iOS 工件(包括您构建的任何测试)放在 Derived Data 目录中。如果您愿意,可以保留该目录的默认位置,但为文件选择更易于访问的位置通常会有所帮助,特别是如果您要经常使用 Test Lab 运行测试:
- 在 Xcode 中打开您的项目。
- 在 macOS 菜单栏中,选择文件>项目设置...
- 将Derived Data下拉菜单从Default Location更改为Custom Location 。
- 在下拉列表下方的字段中,选择 Xcode 将测试输出到的位置。
第 2 步:构建通用测试文件
测试实验室使用XCTest框架运行单元测试和 UI 测试。要在测试实验室设备上运行您的应用程序的 XCTest,请构建它以在通用 iOS 设备上进行测试:
- 从 Xcode 工作区窗口顶部的设备下拉列表中,选择通用 iOS 设备。
- 在 macOS 菜单栏中,选择Product > Build For > Testing 。
第 3 步:打包您的应用以进行上传
最后,通过将您构建的测试文件压缩成.zip
文件,构建并打包您的测试以上传到测试实验室。
要构建您的 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
成功构建测试后,将其压缩以上传到测试实验室:
cd FOLDER_WITH_TEST_OUTPUT/Build/Products : \ zip -r MyTests.zip Debug-iphoneos YOUR_SCHEME_iphoneosDEPLOYMENT_TARGET-arm64.xctestrun
您还可以通过手动压缩测试文件来打包您的测试:
打开 Finder 并导航到您为衍生数据输出指定的目录。
打开您为项目选择的文件夹,然后打开其中的
Build/Products
文件夹。选择文件夹
Debug-iphoneos
和PROJECT_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中上传并运行您的测试。