Mockito抱怨​​错误的论点

时间:2010-11-24 11:54:24

标签: java testing mockito verify

我们尝试使用Mockito验证操作的行为。测试代码如下所示

final Type1 mock = mock(Type1.class);
new SomeAction<Type1>(mock).actionPerformed(null);

verify(mock).someMethod();

方法actionPerformed只包含对Type1构造函数中提供的对象的someMethod调用。然而,Mockito抱怨​​没有发生预期的方法调用,而是发生了不同的方法调用。但是Mockito打印的两个电话的字符串表示完全一样!

有什么解释发生了什么?

更新:Mockito的错误消息

Argument(s) are different! Wanted:
type1.someMethod();
-> at xxx
Actual invocation has different arguments:
type1.someMethod();
-> at xxx

1 个答案:

答案 0 :(得分:4)

这有点紧张,但请检查你的toString实现。我遇到了一些令人恼火的单元测试场景,其中从单元测试的角度来看,预期和观察的情况似乎是相同的,而实际上它们是不同的。最后,它是toString的一个变种,让我相信有一个相似之处,而实际上并没有。