我正在尝试实现XCTest,因为我似乎无法弄清iOS应用中的错误,因此想开始建立get案例。

但是,该应用程序在加载后将自动连接到服务器以更新数据。对于测试,我希望这种情况不会发生,因为我需要清除CoreData数据库并为每个测试填充。

有没有办法知道何时建立(在目标上)是否要运行测试?也就是说,我可以在测试时使用标记来省略某些动作吗?

还是我应该专门为测试复制正常的目标,并以这种方式添加标记?
(例如#if TESTING而非#if DEBUG)

最佳答案

不是您问题的直接答案,但这可能是您问题的解决方案。

您可以模拟执行服务器连接的类(即伪造服务器连接)。

您可以使用可以找到here的OCMock或可以找到here的OCMockito来完成此操作。

目前,我发现OCMock比XCMTest更易于实现。但是,OCMock也可能存在一些问题,但是可以通过查看this site来解决。

10-05 22:06