【问题标题】:Can I run several iOS UI Tests in Parallel?我可以并行运行多个 iOS UI 测试吗?
【发布时间】:2017-12-11 14:54:51
【问题描述】:
我正在为我的 iOS 应用构建一个 UI 测试套件。我需要在几个不同的设备上测试我的应用程序的功能,但现在我必须选择我想要的模拟器,运行测试,然后重复。
现在 Xcode 支持多个模拟器并行运行,有没有办法同时在多个不同的设备模拟器上运行 UI 测试?
【问题讨论】:
标签:
ios
xcode
ios-simulator
xcode-ui-testing
ui-testing
【解决方案1】:
在与项目相同的目录中运行以下命令,以从命令行并行运行测试:
xcodebuild test -scheme "YourSchemeName" -destination 'platform=iOS Simulator,OS=11.2,name=iPhone 8' -destination 'platform=iOS Simulator,OS=11.2,name=iPhone 6s' -configuration "Debug" ENABLE_TESTABILITY=YES SWIFT_VERSION=4.0 ONLY_ACTIVE_ARCH=YES
您可以为不同的目的地添加-destination 'platform=iOS Simulator,OS=11.2,name=iPhone 8',根据需要添加任意数量的不同目的地。
有关可用的模拟器名称和操作系统的列表,请运行以下命令:
instruments -s devices
请记住,如果您在模拟器中运行测试,则在通过命令行运行测试时您不会在屏幕上看到模拟器。
【解决方案2】:
在 Xcode 中:
- 在 Xcode 中选择您的目标方案,然后“编辑方案...”
- 找到“测试”的设置,然后点击“信息”标签
- 您将看到单元和 UI 测试的列表,按下相关的
“选项...”按钮
- 选择“在模拟器上并行执行”
- 可选择“随机执行顺序”
命令行:
看这个答案here