【发布时间】:2019-08-06 15:33:32
【问题描述】:
我有一个类,我在构造函数中使用延迟初始化自动装配它。但是我无法使用@Mock 来模拟它。它在我的测试类中引发空指针异常。
@Transactional
@Repository
public class A{
private B b;
@Autowired
public A(@Lazy B b {
this.b= b;
}
}
Iam unable to mock the bean B.My test class is as follows.
@RunWith(MockitoJUnitRunner.class)
public class ATest{
@Rule
public ExpectedException thrown = ExpectedException.none();
@InjectMocks
A a;
@Mock
B b;
Mockito.when(b.methodCall()).thenReturn("test");
}
上面的代码返回空指针异常,因为我无法模拟 B 类。请告诉我如何模拟这个。
【问题讨论】:
-
请添加堆栈跟踪。还要添加
class B(以及缺少的测试方法)。
标签: spring-boot junit mockito