本篇博文主要讨论以下几个问题:
1、为什么要开展软件检测活动?
2、什么是软件测试?
3、如何理解软件测试?
4、软件测试和开发的关系?
5、软件测试和质量保证的关系?
1、为什么要进行软件测试?
首先举两个例子,2002年7月,首都机场由于软件缺陷影响通信传输,造成航班无法起飞,大批游客滞留机场。还有,2008年北京奥运会官方网站第二阶段开始售票,短短不到半个小时,由于性能问题不能承受过多的同时线上购票,造成网站瘫痪,不得不停止服务。
为什么要进行软件测试?答案很简单,就是为了保证软件质量。如果没有软件测试,就不能了解软件产品的质量。测试是软件工程中不可缺少的一部分,特别是当软件无处不在、越来越贴近人们生活和工作的时候,软件测试的必要性就越来越明显。可以说软件测试是软件质量保证的关键步骤。
2、什么是软件测试?
软件测试奠基人Bill Hetzel(著有《软件测试完全指南》一书)对软件测试的定义是:软件测试就是一系列活动,这些活动就是为了评估一个程序或软件系统的性能或能力,并确定其是否达到了预期结果。(现在有些书上称为正方辩论)。
从上面这个定义中可以看到以下几点:
(1)测试是试图验证验证软件是“工作的”,也就是验证软件功能执行的正确性。
(2)测试的目的是验证软件