一直知道单元测试有很多好处,也看过TDD方面的资料。可就是没机会用,原因一样项目时间太紧,加班都还完不成呢,哪有时间做单元测试啊。
老大有意向要改变现状,我也要冲冲电,找了很多资料。关于单元测试的不少,可关于SSH下的单元测试的文章就不多了。在这里先发布一下自已的一点看法。
1.DAO层的单元测试:DAO层单元测试最好连上数据库,对于我们应用程序,特别是数据处理型应用,你不测试数据库访问,根本就等于没有做测试。换句话说测试DAO就是在测试你的Hibernate映射关系有没有配对,你的HQL查询有没有写对,这一Mock,要测试的真正目标根本就没有达到。spring提供了一个AbstractTransactionalDataSourceSpringContextTests类,功能很强大,可以进行数据回滚。
2.service层:直接用easymock进行单元测试就可以,因为DAO层已经测过数据库,保证DAO正确了。
3.Action层:这里有一个StrutsActionTest可以用,然后用 easymock mock一个request就可以构建测试环境。
先写到这,等做出DEMO再发上来