mockito

ie3xauqp  于 2021-07-13  发布在  Java
关注(0)|答案(0)|浏览(343)

我正在测试一个扩展抽象类的类。具体类成员被注入,当来自具体类mockito的方法调用时,返回null,即使我在测试中已经定义了它。
抽象类

public abstract class A {

    @Inject
    ObjA objA;

    public String methodA() {
       return objA.x()
    }
    // unimplemented methods
}

b类

public class B extends A {

    @Inject
    ObjB objB;

    public String methodB() {
       String x = methodA()
       return x;
    }
}

测试类

@RunWith(MockitoJUnitRunner.class)
public class BTest{
    @Mock
    ObjA objA

    @Mock
    ObjB objB

    @InjectMock
    B b;

    @Before
    public void init() {
        Mockito.when(objA.x()).thenReturn("Hi");
    }

    @Test
    public testBMethod() {
        String x = b.methodB();
        assertEquals(x,"Hi") // X is null even when, when then is defined for mocked object
    }

}

有人能告诉我为什么那时候不行吗?

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题