查看XCTest和Xcode 5单元测试,但没有看到如何在Xcode 5中的Instruments下运行我的单元测试......
具体来说,我想在测试期间寻找泄漏(在这种情况下不必自动化,但显然有用)。
可能的?
答案 0 :(得分:49)
答案 1 :(得分:21)
我认为这是最简单的方法:
答案 2 :(得分:8)
这是在Xcode 6下执行此操作的正确方法:
1)在Xcode项目中,显示“Products”文件夹,选择“.xctest”产品,右键单击,最后在上下文菜单中选择“Reveal in Finder”。
2)启动仪器并使用您选择的模板创建新文档。
3)为文档“选择目标...”
4)导航并选择Xcode用于运行位于/Applications/Xcode.app/Contents/Developer/usr/bin/xctest
的测试的工具(您可以在终端中使用xcrun -f xctest
找到此位置) - 您需要启用“导线包”以在里面导航Xcode应用程序。
5)拖动&从Finder进入“Arguments”字段,在步骤1中显示“.xctest”产品 - 这将进入其绝对路径。
6)点击“选择”。
您现在可以从Instruments运行您的单元测试了!
答案 3 :(得分:3)
我根据我正在测试的mac app目标创建了一个新目标,然后将xctest类添加到要编译的文件中。
然后我将 /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/Library/Frameworks/XCTest.framework 添加到要链接的框架中。
然后将其路径 $(DEVELOPER_DIR)/Platforms/MacOSX.platform/Developer/Library/Frameworks 添加到运行路径搜索路径。
然后在main.m中我添加了以下内容:
XCTestSuite *suite = [XCTestSuite testSuiteWithName:@"My tests"];
[suite addTest:[VideohogCachingTest testCaseWithSelector:@selector(testCompleteSequentialText)]];
[suite run];
这在类 VideohogCachingTest 上运行测试 testCompleteSequentialText 我需要作为普通应用程序运行,因此允许我通过命令+ R或在此运行测试case,使用命令+ I进行分析。然后,我可以抓住一个僵尸并追踪问题,这对我来说不可能。 如果你想运行所有测试,你可以这样做:
XCTestSuite *suite = [XCTestSuite defaultTestSuite];
[suite run];
答案 4 :(得分:0)
有几点注意事项:
应用
单元测试包
UI测试套件