OCMock 测试方法是否只被调用
OCMock test if method does nothing but is called
使用 OCMock,如何测试方法是否不执行任何操作?
- (void)myMethod:(BOOL)active
{
if (active) {
// Set property or do whatever
}
// Do nothing -- I need to test this scenario
}
您可以创建部分模拟来验证是否调用了该方法。然后你必须设计一个测试来确保没有到达 if 语句中的代码。如何做到这一点完全取决于“//设置属性或做任何事情”所做的事情。
也就是说,如果您的方法的整个主体都有一个 if 语句,您可能需要考虑重构您的代码...
使用 OCMock,如何测试方法是否不执行任何操作?
- (void)myMethod:(BOOL)active
{
if (active) {
// Set property or do whatever
}
// Do nothing -- I need to test this scenario
}
您可以创建部分模拟来验证是否调用了该方法。然后你必须设计一个测试来确保没有到达 if 语句中的代码。如何做到这一点完全取决于“//设置属性或做任何事情”所做的事情。
也就是说,如果您的方法的整个主体都有一个 if 语句,您可能需要考虑重构您的代码...