这在我使用Spring Boot 2.0.5时有效,但是在我使用Spring Boot 2.1.0时不适用。我在2.1.0中看到此错误消息:
java.lang.IllegalStateException:配置错误:为测试类[@ org.springframework.test.context.BootstrapWith(value = class org.springframework.boot.test.autoconfigure.orm.jpa发现了多个@BootstrapWith的声明。 DataJpaTestContextBootstrapper),@ org.springframework.test.context.BootstrapWith(value = class org.springframework.boot.test.autoconfigure.json.JsonTestContextBootstrapper)]
我有一个抽象服务测试,如下所示:
@RunWith(SpringRunner.class)
@DataJpaTest
@JsonTest
@Import({ModelMapperConfig.class})
@TestPropertySource("classpath:application-test.properties")
public abstract class AbstractServiceTest {
// Available by virtue of @JsonTest
@Autowired
protected ObjectMapper objectMapper;
// Available by virtue ModelMapperConfig import
@Autowired
protected ModelMapper modelMapper;
}
我可以改用@SpringBootTest,但是对此更改有所了解有助于更好地理解。谢谢。