利用Spring和JUnit对数据库操作进行单元测试
在进行Java程序开发时,我们偶尔会被要求使用JUnit进行单元测试来确保我们所写的程序逻辑是正确的。一个良好的单元测试应该具备 覆盖度高
,可重复执行
,单一性
等特点。本文主要关注可重复执行
,在Web开发中,大部分方法都会使数据库的记录发生变化,为了能够重复执行,必须利用数据库事务来进行回滚
从而达到重复执行的目的。最原始的方法是利用 java.sql.Connection类的 commit()
或 rollback()
方法来在每个单元测试方法中手动的进行提交或回滚,此种方式使得单元测试代码嵌入了与实际业务逻辑无关的数据库操作事务控制代码。利用Spring和JUnit通过注解的方式我们可以很容易的对单元测试中的数据库操作进行事务控制。