Java 对于org.mockito.mockito.times(1),是否有一种方便的方法?

Java 对于org.mockito.mockito.times(1),是否有一种方便的方法?,java,unit-testing,junit,mockito,refactoring,Java,Unit Testing,Junit,Mockito,Refactoring,我正在寻找一个官方提供的方法来取代最后一行 import static org.mockito.BDDMockito.then; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.times; // ... Runnable mock = mock(Runnable.class); then(mock).should(times(1)).run(); …用一些较短的词,如: 为什么更短?因为I

我正在寻找一个官方提供的方法来取代最后一行

import static org.mockito.BDDMockito.then;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.times;

// ...

Runnable mock = mock(Runnable.class);
then(mock).should(times(1)).run();
…用一些较短的词,如:

为什么更短?因为IntelliJ通常有用的功能显示参数的名称,导致许多长代码行:

then(mock).should(times(wantedNumberOfInvocations: 1)).callMethod();
我知道我可以很容易地编写这样一个函数,但是我要么为几个工作区项目复制它,要么引入一个新模块,这对我来说似乎有些过头了


如果您能为
Mockito.atleastone()
至少(1),指出类似
Mockito.atleastone()的内容,那就太好了,至少没有
部分:-)谢谢没有这样的方法。如果你想要的话,请申报你自己的

private static VerificationMode once()
{
    return Mockito.times(1);
}
你可以用

Mockito.calls(1).someMethod() 

另一种选择是使用simple
should()
,它是单次调用的别名:

then(mock).should().callMethod();

我写了一个小测试来证明它,它工作得很好。很好,谢谢。
then(mock).should().callMethod();