我正在Scala中使用specs2和mockito编写测试。测试应该验证异步运行的函数foo
调用barMock.bar()
为了验证barMock.bar()
调用,我可以使用verify
:
verify(barMock).bar()
由于foo
是异步运行的,我应该使用eventually
方法来验证调用:
eventually {
verify(barMock).bar()
}
不幸的是,上面的代码不能编译,我不得不添加success
eventually {
verify(barMock).bar()
success
}
有可能摆脱那个successs
吗?
您需要为eventually
断言一些东西,success
是一个很好的例子,因为之前verify
在未调用AssertionError
时会失败。
如果你想更明确地说明这一点,你可以这样做(基于这个问题):
eventually {
verify(barMock).bar() must not(throwA[AssertionError])
}