用于Mockito.verify的AssertJ解决方案

时间:2018-09-06 09:08:47

标签: java unit-testing mockito assertj

通过AssertJ的API浏览时,似乎没有发现涉及Mockito.verify行为的任何内容。现在,我的断言全部使用了AssertJ fluent API,然后是Mockito.verify,它破坏了断言的流程。

在我错过的AssertJ中,是否有类似的方法来验证某个方法没有被调用,仅被调用一次等?

2 个答案:

答案 0 :(得分:3)

不,AssertJ只是一个断言库,不是模拟库,由于Mockito已经在其中做得很好,因此没有计划在将来提供模拟。

答案 1 :(得分:2)

我尝试过这样的事情:

SoftAssertions.assertSoftly(softly -> {
        softly.assertThat(someValue).isNull();
        softly.assertThatCode(() -> verify(mockedInstance).someCall(eq("argument")))
              .doesNotThrowAnyException();
    });