直接配置在测试类上

  1. @RunWith(SpringRunner.class)
  2. @SpringBootTest
  3. @ImportResource("classpath:applicationContextTest.xml")
  4. @Transactional
  5. @Rollback
  6. public class RunExample {
  7. }

使用测试基类

这种方式为使用自定义的Application

  1. @SpringBootApplication(exclude = {DataSourceAutoConfiguration.class})
  2. public class ApplicationTestConfiguration {
  3. @Resource
  4. private DataSource dataSource;
  5. @Bean
  6. public JdbcTemplate jdbcTemplate() {
  7. return new JdbcTemplate(dataSource);
  8. }
  9. }
  10. @RunWith(SpringRunner.class)
  11. @SpringBootTest(classes = ApplicationTestConfiguration.class)
  12. @Transactional
  13. @Rollback
  14. public class TransactionalTestBase {
  15. @Resource
  16. protected JdbcTemplate jdbcTemplate;
  17. }

注:默认情况下,SpringBoot会扫描当前类路径上的applicaitonContext.xml文件
如果main/classes或test/classes都有applicaitonContext.xml文件,则根据查找原理,优先取test/classes目录中的XML文件。