使用什么而不是SimpleJdbcTestUtils?

时间:2012-08-08 09:10:25

标签: java spring unit-testing jdbc

我正在尝试使用Spring和DBUnit建立数据库测试。我有一个脚本在每次测试之前运行。以下代码有效,但不推荐使用SimpleJdbcTemplate 。方法executeSqlScript将作为3.2版本的一部分移至JdbcTestUtil,但我们在3.1.x上。使用什么呢?

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration
public class MyTestScript{

    @Autowired
    public DataSource dataSource;
    @Autowired
    public Resource script;

    @Before
    public void setup() {
        SimpleJdbcTestUtils.executeSqlScript(
            new SimpleJdbcTemplate(dataSource), script, true);
    }

    @Test
    public void testInsert() {
    }
}

2 个答案:

答案 0 :(得分:0)

查看Liquibase http://www.liquibase.org/这是一个很好的迁移数据库的解决方案,没有理由不能从JUnit中使用它。

答案 1 :(得分:0)

你应该压制警告并继续。一旦切换到Spring 3.2,转换将是微不足道的(删除所有Simple前缀)。在这些测试中,没有任何理由可以不惜一切代价避免使用SimpleJdbcTemplate,因为它的整个功能都在JdbcTemplate下同名。