我有一个iOS项目,它来自较旧的Xcode(4.6.3),并且默认情况下不包含测试目标,因为最新的Xcode版本中的项目似乎包括。我现在有Xcode 5.1.1。在运行OS X 10.8.5的Mac上。我正在阅读有关Xcode中单元测试的this Apple's document,但看起来你需要OS X Mavericks,至少在安装和配置OS X Server时,不是吗?
我很欣赏为我的项目添加测试目标时要遵循的一些准则,如果我没有OS X Maveriks,如何在我的工作流程中集成测试过程。
提前致谢
编辑:在正常运行应用程序时是否还有运行测试?我的意思是,我需要测试一些涉及在某些时间更新数据的情况,以及在数据更新后更新某些参数和GUI ......我怎么能这样做?感谢
答案 0 :(得分:0)
如果您希望使用Apple的持续集成服务器Xcode服务,则需要Mavricks。你不需要Mavricks来运行单元测试,但是你会错过漂亮的in-xcode报告。
如果没有Mavericks,您可以通过按CMD+U
或转到Product->Test
手动运行单元测试。
您还可以设置自己的持续集成服务和run the unit tests with a command line脚本。您将不得不选择一个CI服务器,例如Jenkins或许多其他选择,并查找该系统的操作方法。
答案 1 :(得分:0)
您是否将NSLog / stderr重定向到任何地方?
我也遇到了这个问题,没有红色标记和'1 == 1'的测试失败。
我的应用程序正在捕获对文件的NSLog调用,而不是让系统获取它们。一旦我禁用重定向日志freopen(filepath, "a", stderr)
测试开始通过,绿色检查和红色十字架出现。
我这样做是为了通过闪电端口连接的外部附件设备,无法将日志发送到mac。你提到了你在app的正常运行期间如何运行测试,所以我想你可能已经保存了日志,所以你可以从你的Mac上读取它们。