我有一个依赖方法,看起来像这样:
class Dependency {
public CustomObject myMethod(int a, int b, Class<T> classType) {
...
}
}
我正在为调用此依赖项的方法编写单元测试
我的测试类看起来像:
public class MyTest {
@Rule public MockitoRule mockitoRule = MockitoJUnit.rule();
@Mock private MyDependency
@Test
public void testCallingMyDependency() {
when(MyDependency.myMethod(any(), any(), any()).thenReturn(new CustObject());
}
首先,这会在when语句的行中抛出空指针异常。然后我看到像
这样的例外Misplaced argument matcher detected here:
[junit] -> at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
[junit] -> at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
[junit] -> at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
[junit]
答案 0 :(得分:0)
要匹配int
参数,您需要使用anyInt
匹配器。