java - 使用 Mockito 测试 @Postconstruct
问题描述
为什么当我通过Mockito
我的@Postconstruckt
方法注入模拟时没有调用?
@Service
public class MyService {
public MyService() {
System.out.println("CONSTRUKTOR");
}
@PostConstruct
public void init() {
System.out.println("POST CONSTRUCT");
}
@RunWith(MockitoJUnitRunner.class)
public class Mockito1 {
@InjectMocks
private MyService service;
@Before
public void init() {
}
输出:仅:CONSTRUKTOR
解决方案
因为 PostConstruct 只是弹簧概念。但是您可以手动调用 postConstruct 。
@Before
public void prepare() {
MockitoAnnotations.initMocks(this);
this.service.init(); //your Injected bean
}
推荐阅读
- node.js - 如何获取我的应用程序所在的当前时区
- python - Firebase Admin 用户身份验证不发送短信,只直接创建用户
- javascript - 在路由返回响应后可以在 koa 中进行异步调用的推荐方法是什么?
- spring-boot - Spring JPA:如何为下表和查询规范编写实体类
- r - 在 R Shiny 中,如何将使用 rhandsontable 生成的表和相关输入移动到模态对话框中?
- python-3.x - Python Beautifulsoup 在 spans 中抓取了错误的数据
- javascript - 如何确定数组是否包含某个字符串?
- python - 如何将一维列表中的元素替换为零比较另一个列表?
- html - 通过多个页面链接文本
- python - 带有 OpenAPI 3.0.1 的 SwaggerEditor 不显示响应 base64 PNG 图像