在JMock中使用one()或oneOf()有什么不同吗?
Cheat sheet说:
oneOf =调用只需一次和一次
exact(n).of =调用恰好是n次。注意:一个是准确的简写(1)
在测试中我可以看到使用一个,而在另一个测试中有一个。问题是这些关键字之间是否存在差异,或者它意味着相同的事情。
在前面提到的备忘单中也有例子:
oneOf (calculator).add(1, 1); will(returnValue(2));
oneOf (calculator).add(2, 2); will(returnValue(5));
这可能说oneOf意味着我希望可以更多地调用方法add,在这种情况下有两个调用(其中一个是参数1和1,第二个是参数2和2)。
但恰好一个人就是一个人,也就是说,一个人就可以说,在一种测试方法中,我只对这种方法进行一次调用。
也许这只是我对这个定义的误解。
答案 0 :(得分:3)
没有区别。 oneOf(mockObject)
只是exactly(1).of(mockObject)
的别名。