3

我正在将一些测试用例从 JMock 迁移到 JMockit。到目前为止,这是一段愉快的旅程,但 JMock 有一个我无法在 JMockit(版本 0.999.17)中找到的功能

我想检查是否从未调用过模拟(任何方法)。

使用 JMock,我只需要在 Expectations 块中添加以下内容:

never(mock)

JMockit 是否可行?

编辑:

我可能已经找到了解决方案,但不是很明确。如果我将这个模拟的任何方法times =0放在我的期望块中,那么这个模拟就会变得严格,我相信任何调用的方法都会触发异常。

4

1 回答 1

3

尝试一个空的完整验证块,它应该验证在任何给定的模拟上都没有发生调用:

@Test
public void someTest(@Mocked SomeType mock)
{
    // Record expectations on other mocked types...

    // Exercise the tested code...

    new FullVerifications(mock) {};
}
于 2012-10-23T11:06:00.060 回答