在mockito的stubbed方法中传递类类型

时间:2016-10-14 17:56:29

标签: java junit

我有一个依赖方法,看起来像这样:

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] 

1 个答案:

答案 0 :(得分:0)

要匹配int参数,您需要使用anyInt匹配器。