使用单元测试时避免运行部分代码

问题描述 投票:0回答:2

我希望当我运行单元测试的应用程序时不执行我的部分代码,问题是我的功能是在BD中保存一个对象,我想避免这种情况。

api.getUsers(completion:{(objects)
//In this response I save the object in BD
})
ios swift xcode unit-testing xctest
2个回答
0
投票

如果您正在运行单元测试,我认为您不希望在运行时有条件地执行某些操作。恕我直言,这将是一个可怕的想法。

您在单元测试中可能需要的是创建api类的模拟对象,然后将模拟的版本注入您正在测试的类中。


-1
投票

您可以在方案属性(测试部分)中将isTest等启动参数设置为YES

并且,在您的函数中使用此:

BOOL isTest = [[NSUserDefaults standardUserDefaults] boolForKey:@"isTest"];
© www.soinside.com 2019 - 2024. All rights reserved.