3

在签入我的项目之前,我有一套单元测试。但是,通常情况下,只有其中一个人在代码中发现了一些回归。在这些情况下,我只想在调试失败时运行那个特定的单元测试。我还没有在 Xcode 中找到任何方法来做到这一点。是否可以?

4

3 回答 3

3

如果您愿意将测试限制在单个测试类,一个简单的选择是创建第二个测试目标(复制现有目标,更改产品名称并删除“编译源”构建阶段的内容,如果您愿意) 并仅添加您要修复的测试源文件。

或者,您可以使用“其他测试标志”选项将-SenTest参数传递给otest测试运行器:

% /Developer/Tools/otest       
2009-08-29 22:28:39.555 otest[70089:10b] Usage: otest [-SenTest Self | All | None |
<TestCaseClassName/testMethodName>] <path of unit to be tested>

有关使用此方法的更多信息,请参见此处

于 2009-08-30T03:29:35.420 回答
2

感谢您朝着正确的方向推动。我最终使用了相同的基本概念,但我添加了一个 GUI,让您可以选择要运行的内容以及为每个测试获得漂亮的红色/绿色状态。如果有人感兴趣,代码在下面的 URL 中。UI 需要更多的吐槽和润色,但它似乎正在工作。

http://github.com/nall/XcodeUnitTestGUI/tree/master

在我开始上面的项目之后,我发现这个项目真的很棒。

http://github.com/gabriel/gh-unit

于 2009-08-30T23:25:09.313 回答
1

对于新读者:Xcode 现在提供的一种更好的方法是编辑要测试的目标的方案,然后在方案窗格的左侧栏中选择“测试”。使用测试列中的小部件来扩展目标和套件。您可以使用右侧的复选框在每个测试目标、每个套件或每个测试的基础上禁用/启用测试

于 2013-05-22T14:34:28.713 回答