2011-05-04 99 views
1

如何在XCode4中运行单元测试而无需切换到UnitTest profile/target?如何在XCode4中运行单元测试而无需切换到UnitTest profile/target?

因此,虽然在正常的“建立/上模拟器运行”在XCode4轮廓,有一种方法(例如,快捷键或其他方式)被设置在另一目标开球单元测试?

从XCode4目标视图

所以: * myAppTarget - 在Xcode是当前设置为 * unitTestTarget - 想走捷径所以有效地触发这些

运行方式自动相当于: *切换到Xcode的目标单元测试* 运行单元测试 *切换回正常myAppTarget

+0

'⌘-U'如果您使用的是内置的SenTestingKit单元测试。你在使用第三方测试框架吗? – Jonah 2011-05-04 21:42:53

+0

@Jonah - 只是用什么自带的XCode - 当我在正常的项目目标是目前在Xcode 4.0.2和我打⌘-U的XCode实际上崩溃 - 我已经提交这些苹果。我不记得之前做了什么,但是我没有想到它会踢单元测试......希望Xcode的下一个补丁版本能够解决问题,这样我就可以尝试你所说的话 – Greg 2011-05-04 23:09:36

+0

设置一个全新的项目。一定要选择“包含单元测试”。查看⌘-U是否适用于模板代码。 – 2011-05-05 03:28:56

回答

1

我不知道如果你的意思是什么,但如果你创建一个包含你的逻辑测试可以设置逻辑测试目标在构建时执行,并依赖于正常的项目也可以编译逻辑测试项目。

这样,你可以迫使你的项目运行逻辑测试,只要你建立它。

+0

你如何做到这一点 - 我有我的appTarget构建方案,在“构建”下,我看到应用程序行与所有勾选框打勾,然后第二行是UnitTest只有“测试”tickbox勾选。但是,当我打BUILD时,它仍然不会导致单元测试运行? – Greg 2011-05-05 23:42:46

+1

在目标的build-option中(有很多奇怪设置的p-list),有一个“Test after build”设置。 (抱歉,答案很慢) – Theo 2011-06-28 13:36:41

2

值得一提的是,单元测试的Xcode 4下完全不同的比他们以前的版本。正如其他人所评论的那样,在测试操作中为目标自动设置单元测试的最简单方法是在创建目标时选择“包含单元测试”。这将创建一个OCUnit捆绑包目标,并自动将其设置在该方案的测试操作中。

如果要转换旧项目,可能需要删除为OCUnit目标自动创建的方案,并编辑相应主目标的方案中的Test操作以添加OCUnit目标中的测试。任何与SenTestingKit链接的OCUnit软件包都可以在这里找到。应该应该能够用⌘-U运行单元测试。

要选择的单元测试的方案运行,编辑的方案,其中的复选框可用于每个测试和测试类的测试动作。

相关问题