路漫漫其修远兮,吾将上下而求索
集成测试(2)
上一篇 /
下一篇 2007-11-30 00:11:20
集成测试的目的:验证代码接口的正确性;验证代码与HLD的准确度;验证需求与设计的错误。
集成测试的层次:模块内的集成测试;子系统内的集成测试;子系统间的集成测试。
集成测试策略:
- 大爆炸集成:
优点
- 再有利的情况下,大爆炸集成可以迅速完成集成测试,并且使用很少的驱动和桩模块
- 需要的测试用例比较少
- 简单
- 并行进行,人力物理资源利用率高
缺点:
- 这种一次性组装方式试图在辅助模块的协助下,在模块单元测试的基础上,将所有模块连接起来进行测试。但是由于程序中不可避免的存在模块间接口的问题和全局数据结构等方面的问题,所以成功性不大
- 再发现错误时,定位和修改错误比较困难
- 有很多接口错误躲过了集成测试而进入了系统测试。
2.自顶向下的集成测试:
优点:
- 跟开发设计的顺序相同符合正常的思路
- 可以较早的验证一个功能的实现
- 最多只需要一个驱动模块,减少了驱动器开发的费用。
- 支持故障隔离
缺点 :
- 桩的开发和维护是本策略的最大成本
- 低层组件中一个无法预计的需求可能会导致许多顶层组件的更改
- 低层组件的验证被推迟
- 随着底层模块的增加,整个系统越来越复杂,导致底层模块的测试不充分。
3.自底向上的集成测试
优点:
- 底层模开早期被验证,可以并行进行测试
- 驱动是额外编写的,因此对实际被测试的模块的可测试性要求较自顶向下的小
- 减少了桩的工作量
- 支持故障隔离
缺点:
- 驱动的开发工作量庞大
- 对高层的验证被推后,设计上的错误不能即使发现,尤其是那些在控制结构上对证个体系非常关键的产品
- 随着集成到了顶层,整个体系将变的越来越复杂,并且对于低层的一些异常将难以覆盖,而使桩将简单的多
4.三明治集成:融合了自顶向下和自底向上的优点,但是中间层在被集成前测试补充分
此外还有基干集成测试,分层集成,基于功能集成,高频集成,基于进度集成,基于消息集成,基于使用的集成,客户/服务器的集成,分布式集成
收藏
举报
TAG: