如何在XCode 5中的每个“构build和运行”操作中自动执行unit testing?
我知道以前有类似的问题,但是提供的答案不包括XCode 5.我明白,XCode 5中的TEST_AFTER_BUILD设置已经过时(请参阅unit testing – XCode 5更新之后的RunUnitTests错误 )这自然会导致我的问题:在每次构build之后,如何自动执行unit testing,现在该设置已过时。
非常具体:
- 我的工作区有几个(超过10个)项目。
- 当我按下Xcode 5中的RUNbutton(UI左上angular)时,我想要unit testing运行当前scheme中的所有依赖关系(假设当然相关的项目已被修改)。
- 此外,如果任何testing失败,则构build和运行操作将失败。
这是在XCode 4中工作; 请参阅上面的链接,了解“旧的做法”现在如何被打破。
这是一个迁移问题。 我不需要在XCode中进行unit testing的一般(也可能是过时的)教程。
虽然我真的希望更精简和更好的整合,但我最接近的是:
- 为包含我们的应用程序的项目添加构build阶段(请记住,我们有一个包含多个项目的工作区,这些项目中的大多数会生成我们的应用程序所需的库)
- 构build阶段从xcode中调用“xcodebuildtesting”(请参见下文)
要添加构build阶段,请打开我们正在添加构build阶段的目标,然后使用菜单项:
编辑器>添加构build阶段>添加运行脚本构build阶段
调用xcodebuild的自定义脚本如下所示:
cd DIR xcodebuild -workspace MY_WORKSPACE.xcworkspace -scheme MY_SCHEME -destination 'platform=iOS Simulator,name=iPhone' test ...
其中:DIR – 包含我的工作空间的目录。
… – 为每个正在testing的库重复命令调用。
( 在我的博客上添加了一些信息 )
这远远不够完美,但是由于缺乏更好的东西,它做了一个工作。 感谢张贴,如果你有一个更好的解决scheme。
我可能有一个有用的链接给你:
http://meandmark.com/blog/2013/09/xcode-5-unit-testing-changes/
特别是部分: XCTest
这是在XCode 4中工作; 请参阅上面的链接,了解“旧的做法”现在如何被打破。
你指向Xcode 5的一个可能的解决scheme,即使我不知道它是否是一个正确的答案。 也许你应该更接近地指出你的问题
而你的工作与你的项目的test scheme
? 您是否尝试过configuration正确的预执行并检查了您的testing设置?
从项目导航器中select项目以打开项目编辑器。 select项目编辑器左侧的项目或目标。 点击编辑器顶部的Build Settingsbutton。 “生成后生成testing”设置位于“unit testing”集合中。 然后将“构build后testing”构build设置设置为“是”。 select产品>构build>构buildtesting以构build项目并运行testing。 我在这里得到了一个类似问题的答案。
请参阅本教程开始自动化testing。