1

我在 JUnit 测试类中有以下期望:

CustomEvent myCustomEvent = new CustomEvent(data1, data2);
m_context.checking(new Expectations() {{
    oneOf(handler).somethingHappened(myCustomEvent); }});

在正在测试的类中,我正在调用一个在测试类中使用相同参数handler.somethingHappened的实例。CustomEvent但是,当正在测试的类中发生这种情况时,JMock 会声明意外调用。

JMock 错误显示了对在类中创建的对象的差异对象引用,所以我假设这就是我有意外引用的原因。

我的问题是,我怎样才能改变我的期望,以便我可以测试对象实际上是相等的?等于对象的内容而不是内存引用。

谢谢

4

1 回答 1

1

myCustomEvent与测试期间出现在代码中的那个有什么关系?默认匹配是调用equals(),否则您应该使用匹配器来描述该关系(并且不要忘记with子句)

于 2012-05-22T13:06:09.347 回答