Spring boot 更新问题:如何模拟MapToJson类
这是对我先前问题的更新。我有一个实用程序类,我已经设法用我的单元测试覆盖它,除非条件返回false 这是我的班级:Spring boot 更新问题:如何模拟MapToJson类,spring-boot,junit,Spring Boot,Junit,这是对我先前问题的更新。我有一个实用程序类,我已经设法用我的单元测试覆盖它,除非条件返回false 这是我的班级: @组件 公共类UTIL{ @自动连线 私有对象映射器映射器=新对象映射器(); @自动连线 私人日志服务日志服务; 公共字符串mapToJsonString(E对象){ 试一试{ if(object==null){ 抛出新IOException(ErrorMessage.ERROR\u PROCESSING\u JSON\u NULL); }否则{ 返回mapper.enable(
@组件
公共类UTIL{
@自动连线
私有对象映射器映射器=新对象映射器();
@自动连线
私人日志服务日志服务;
公共字符串mapToJsonString(E对象){
试一试{
if(object==null){
抛出新IOException(ErrorMessage.ERROR\u PROCESSING\u JSON\u NULL);
}否则{
返回mapper.enable(SerializationFeature.INDENT_OUTPUT).writeValueAsString(object);//此处为空指针
}
}捕获(IOE异常){
loggingService.logError(this.getClass().getName(),“1”,ErrorMessage.ERROR\u映射到\u JSONSTRING,e);
返回“”;
}
}
}
这是我的单元测试
@RunWith(SpringRunner.class)
@ContextConfiguration(classes=AtAmmonitoringApplication.class,initializers=ConfigFileApplicationContextInitializer.class)
公共类ObjectToJsonStringTest{
@间谍
私人ATM;
@自动连线
私人公用事业公用事业公用事业公用事业公用事业公用事业公用事业公用事业公用事业公用事业公用事业公用事业公用事业公用事业公用事业公用事业公用事业公用事业公用事业公用事业公用事业公用事业公用事业公用事业公用事业;
@蚕豆
私有对象映射器映射器;
@蚕豆
私人日志服务日志服务;
@以前
公共作废设置(){
initMocks(this);
myModelClass=新的myModelClass();
myModelClass.setStatus(“U”);
myModelClass.setTermCode(“001”);
myModelClass.setLocation(“BGC”);
}
@试验
public void testObjectToJson()引发JsonProcessingException{
字符串输出=utils.mapToJsonStringmyModelClass
assertNotNull(输出);
}
@试验
public void testObjectToJsonNull()引发JsonProcessingException{
字符串输出=utils.mapToJsonString(null);
assertNull(输出);
}
@试验
public void testJsonParsingException(){
myModelClass=新的myModelClass();
myModelClass=null;
字符串输出=utils.mapToJsonString(myModelClass);
Mockito.when(loggingService.logError(this.getClass().getName(),“1”,ErrorMessage.ERROR\u映射到\u JSONSTRING,新异常())
。然后返回(“”);
assertThat(output.isEmpty();
}
}
堆栈跟踪显示我在这行代码上有一个空指针:
return mapper.enable(SerializationFeature.INDENT_OUTPUT).writeValueAsString(object);
请帮我做这个。谢谢解决了这个问题。我只是改变一下
@Mock
private ObjectMapper mapper;
来自@MockBean,它覆盖了整个班级