[英]PostConstruct not being called in junits
When i am testing(JUnit) this class i get NullPointerException when i call getdata method 当我测试(JUnit)此类时,我在调用getdata方法时得到NullPointerException
private static final Map<String, Function<String, String>> REFERENCE_MAP = new HashMap<>();
@Autowired
private static classA aobj;
@PostConstruct
public void initialize() {
REFERENCE_MAP.put("s1", (bucketName) -> {
return aobj.getSomething1(bucketName);
});
REFERENCE_MAP.put("s2", (bucketName) -> {
return aobj.getSomething2(bucketName);
});
REFERENCE_MAP.put("s3", (bucketName) -> {
return aobj.getSomething3(bucketName);
});
REFERENCE_MAP.put("s4", (bucketName) -> {
return aobj.getSomething4(bucketName);
});
}
public String getdata() {
return REFERENCE_MAP.get("s1").apply("bucketname1");
}
how do i solve the problem 我该如何解决问题
In test file call the initialize method before running tests 在测试文件中,请在运行测试之前调用initialize方法
@RunWith(MockitoJUnitRunner.class)
public class testClass {
@InjectMocks
private mainClass mainclass;
@Mock
private ClassA obja;
@Before
public void init() {
mainclass.initialize();
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.