是否可以从命令行界面从iOS应用测试目标(而不是所有测试用例)运行单个测试用例或单个测试套件?
您可以使用开箱即用的xcodebuild从命令行运行测试。执行此操作时,您将运行您已选择的测试目标中包含的所有测试用例。
你也可以使用Fastlane的scan来做这件事,虽然我相信你只能运行你选择的构建方案的所有测试(如上所述),所以它不是与xcodebuild不同。
您可以使用Facebook中的xctool运行特定测试,但它不使用xcodebuild,并且仅限于在模拟器上运行,而不是实际的iOS测试设备。
我找到了直接运行xctest命令行实用程序的引用,但它似乎是一个未记录的功能,并以DerivedData为目标。 UI测试have their *xctest files in a separate XCTRunner bundle。
使事情变得复杂答案 0 :(得分:74)
答案 1 :(得分:19)
您可以编辑方案以仅运行特定测试。选择方案,然后编辑方案。在出现的窗口中,选择测试阶段并禁用/启用单个测试。
您还可以添加方案来运行测试子集。从命令行运行测试时,您可以指定用于测试的方案(至少在fastlane中)。
答案 2 :(得分:5)
我和你的情况类似,并且已经构建了一个python脚本,触发了我想要的一组测试用例。它有点复杂的过程但对我有用,并且随着时间的推移在实现DataProvider方法,重新运行失败的测试用例和我需要的其他自定义方面非常有用。
您希望实现的一些相关步骤。
如果您需要更多信息,请添加评论,我会回复。
答案 3 :(得分:3)
答案 4 :(得分:1)
-only-testing:<MyXCTargetForTest>/<MyTestSuite>/<MyTestMethod>
例如,如果Test Navigator
看起来像
参数将具有以下类型
-only-testing:SampleAppTest/SampleAppTest/testExample
您还可以使用-skip-testing
了解更多here