我试图设置杰克逊映射器属性"默认视图包含"在我的Spring MVC测试中是真的。根据{{3}},我在application.properties
文件中有这个:
spring.jackson.mapper.default-view-inclusion=true
这在我运行我的应用程序时有效,但在我运行测试时则无效。对我的测试来说,最好的方法是什么?
更新
我尝试过的一种方法是在测试中包含我的配置文件。
@ContextConfiguration(classes = MyTest.Config.class, initializers = ConfigFileApplicationContextInitializer.class)
我可以在日志中看到这会加载我的application.properties
,但它似乎没有任何效果。
答案 0 :(得分:1)
尝试以下方法:
@Before
public void setup(){
MockitoAnnotations.initMocks(this);
this.mockMvc = standaloneSetup(translationsRessource)
.setControllerAdvice(new ControllerExceptionHandler())
.setMessageConverters(jacksonMessageConverter())
.build();
}
private MappingJackson2HttpMessageConverter jacksonMessageConverter() {
ObjectMapper objectMapper = new ObjectMapper();
objectMapper.configure(MapperFeature.DEFAULT_VIEW_INCLUSION, true);
MappingJackson2HttpMessageConverter converter = new MappingJackson2HttpMessageConverter();
converter.setObjectMapper(objectMapper);
return converter;
}