[笔记]单元测试的最佳实践(整理自王维平的ppt)

本文探讨了单元测试中资源文件的管理策略,特别是在不同环境下的数据库测试方法。提出了使用内存数据库及事务回滚等技巧,并讨论了如何进行有效的回归测试及持续集成。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

如果单元测试依赖一些本地资源文件的话,最好把测试需要的资源文件放到classpath中或者是项目下的某个目录中,也就是说要保证测试在任何环境下都可以正常运行
数据库相关的测试的一个主要的问题就是需要一个实际存在的数据库并且在每次测试完成之后都不能在数据库中引入垃圾数据。在测试的时候不要引入不必要的测试数据。要实现这个目标有两种方式:
 一、使用一个和实际数据库一样的测试数据库
 二、在每个测试完成之后,数据库事务自动回滚
 三、使用Hibernate这种sql自动生成的ORM框架中,测试的时候使用内存数据库应该是一个最佳选择
 四、对于采用iBatis这种半自动化的ORM时,测试的最好方式就是使用一个真实的数据库结合上面的第二点

对于servlet/taglib/struts这些类实际上都是调用我们后台写好服务类来完成相应的功能的。

所以在很多情况下,我们只需要对我们所调用的服务类做单元测试就可以了
怎样才能很快的知道其中的改变是否会影响另一方
回归测试 在每次源代码发生变化的时候都重新运行所有的单元测试,而不只是运行所修改过的单元测试
关于回归测试大多数会采用一些工具来协助,达到自动化完成。目前采用最多的应该是持续集成平台,比如AnthillPro/CruiseControl
关于持续集成可以参考Martin Fowler的这篇文章:
         http://martinfowler.com/articles/continuousIntegration.html

转载于:https://www.cnblogs.com/cnblue/archive/2011/09/22/2184875.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值