ios – 如何在XCode 5中的每个“构建和运行”操作中自动执行单元测试?

我知道之前曾提出过类似的问题,但所提供的答案并不包括XCode 5.

我知道TEST_AFTER_BUILD设置在XCode 5中已经过时(见
unit testing – RunUnitTests error after XCode 5 update)

这自然导致了我的问题:如果设置已经过时,我在每次构建后如何自动进行单元测试.

非常具体:

>我的工作区中有几个(超过10个)项目.
>当我按下Xcode 5中的RUN按钮(在UI的左上角)时,我希望在当前方案中为所有依赖项运行单元测试(假设当然已经修改了相关项目).
>此外,如果任何测试失败,则构建和运行操作将失败.

这是在XCode 4中工作的;请参阅上面的链接,了解“旧方法”现在如何被破坏.

这是一个移民问题.我不需要在XCode中进行单元测试的一般(可能是过时的)教程.

最佳答案 虽然我真的希望有更精简和更好的集成,但我最接近修复的是:

>在包含我们的应用程序的项目中添加构建阶段(请记住,我们有一个包含多个项目的工作区,大多数这些项目都会生成我们的应用程序所需的库)
>构建阶段从xcode中调用“xcodebuild test”(见下文)

要添加构建阶段,请打开我们要添加构建阶段的目标,然后使用菜单项:

编辑器>添加构建阶段>添加运行脚本构建阶段

调用xcodebuild的自定义脚本如下所示:

cd DIR
xcodebuild -workspace MY_WORKSPACE.xcworkspace -scheme MY_SCHEME -destination ‘platform=iOS Simulator,name=iPhone’ test
...

哪里:
DIR – 包含我的工作区的目录.
… – 对每个正在测试的库重复命令调用.

(已添加some info on my blog)

这远非完美,但由于缺乏更好的东西,它可以完成任务.
如果您有更好的解决方案,感谢您的发布.

点赞