How do I run a subset of OCUnit tests in Xcode

我怕爱的太早我们不能终老 提交于 2019-12-10 20:26:06

问题


I have a suite of unit tests that I use before checking in my project. However, very often it's the case that only one of them finds some regression in the code. In these cases I'd like to only run that particular unit test while debugging the failure. I haven't found any way to do this in Xcode. Is it possible?


回答1:


If you're happy restricting your testing to a single test class, a simple option is to create a second test target (duplicate the existing target, change the product name and remove the contents of the "Compile Sources" build phase, if you wish) and add only the test source file you're trying to fix to it.

Alternatively, you can use the "Other Test Flags" option to pass a -SenTest argument to otest, the test runner:

% /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>

More information about using this method is here.




回答2:


Thanks for that push in the right direction. I ended using the same basic concept, but I added a GUI that lets you select what gets run as well as get a nice red/green status for each test. If anyone is interested, the code is at the URL below. The UI needs to more spit and polish, but it seems to be working.

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

After I started the project above, I found this project which is really fantastic.

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




回答3:


For new readers: A much better way now available in Xcode is to edit the scheme for the target to be tested and select "Test" in the left hand column of the scheme pane. Use the widgets in the Tests column to expand targets and suites. You can disable/enable tests on a per test target, per suite or per test basis using the check boxes on the right



来源:https://stackoverflow.com/questions/1352971/how-do-i-run-a-subset-of-ocunit-tests-in-xcode

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!