Ios 猕猴桃:mock和nullMock的具体区别?
我在一个项目中使用Kiwi,不太清楚什么时候使用mock和nullMock。以下是Kiwi文件目前提供的内容: 普通模拟对象在收到请求时将引发异常 它不期望的选择器或消息模式。预期消息 在存根或接收期望时自动添加到模拟 用于模拟 如果您不关心mock接收其他消息,并且不希望 要引发异常,请使用null模拟,也称为null 反对Ios 猕猴桃:mock和nullMock的具体区别?,ios,unit-testing,testing,tdd,kiwi,Ios,Unit Testing,Testing,Tdd,Kiwi,我在一个项目中使用Kiwi,不太清楚什么时候使用mock和nullMock。以下是Kiwi文件目前提供的内容: 普通模拟对象在收到请求时将引发异常 它不期望的选择器或消息模式。预期消息 在存根或接收期望时自动添加到模拟 用于模拟 如果您不关心mock接收其他消息,并且不希望 要引发异常,请使用null模拟,也称为null 反对 这种差异将在什么样的情况下发挥作用?空模拟具有响应发送给它们的每个可能消息的良好功能,这意味着您不需要手动设置将在该模拟上调用的每个方法。常规模拟没有这个功能,如果要将它
这种差异将在什么样的情况下发挥作用?空模拟具有响应发送给它们的每个可能消息的良好功能,这意味着您不需要手动设置将在该模拟上调用的每个方法。常规模拟没有这个功能,如果要将它们作为依赖项注入,则需要准备它们 大多数情况下,您将使用null mock,因为如果调用了某个方法,您通常会感兴趣,因为您正在其他测试中对mock上的其他方法进行测试 这既有优点也有缺点: 使用空模拟的测试可能会隐藏细微的错误,因为您可能会忘记测试由其他方法之一触发的角落案例 使用null mock的测试开发得更快,因为您不必跟踪被测试方法调用的每个方法,这也不好,因为您在测试和代码之间创建了一种强大的关系,这使得重构更加困难