单元测试是编写高质量代码的前提,通过编写有效的单元测试即可以保证代码的质量又可以提高开发速度,因为大多数问题都可以通过单元测试发现并解决而不需要部署到应用服务器。纵览网上流行的优秀开源框架,无一不提供完整的单元测试用例。Spring框架便是其中的代表和佼佼者,因为Spring所遵循的控制反转(IoC)和依赖注入(DI)原则使编写有效、干净的单元测试用例变得更加方便、快捷。
编写单元测试用例
本文所采用的案例非常简单,就是对数据库表的增、删、改、查操作进行测试。假设我们有这样一个表url(MySql数据库):
正如你所见,该表只有几个字段,但对于我们的案例来说完全够用。
看到此处,你应该清楚我们是要对数据库操作进行单元测试。如果你是一位经验丰富的开发人员,此时已经会有许多疑问,甚至已经失去继续阅读本文的兴趣:
2 单元测试不应该直接操作数据库?
2 对数据库操作的单元测试可以采用DAO模式,Mock一个实现类?
2 使用内存数据库?
2 其他?
数据库表有了,我们接下来编写DAO及其实现类:
DAO接口:
/**
* @author tao.youzt
*/
public interface BizUrlDAO {
public Object insert(BizUrlDO bizUrlDO);
public int delete(String url);
public BizUrlDO getByUrl(String url);
}