此外,因为一直普及着“为了能够让我们看到所开发的软件在运行,就必须将软件测试工作向后推动”的错误思想,在当时,测试依然是处于较为低等的地位。人们一般都认为,测试目的就是为了确保所开发的东西能够工作。等到20世纪70年代左右的时候,"软件工程”这个话题已经开始开始频繁出现在高校工作者的学术论文之中。在1972年,在美国的一所大学内正式打开了测试软件相关的体系集会。到了1979年,glenford梅尔斯在他的《软件测试》(软件测试的艺术),详细的阐明了何为测试:"通过进行一系列的活动去检查产品的错误。这就是测试。 [1]
从现在开始,对于软件测试来讲,对其考察的内容就不再只是检查错误这么简单,同时还包括了对它的性能及功能的内容判定。此时,开发与测试人员走到了一起,开始就测试的一系列规章制度进行讨论,并且规范了一系列标准。这些标准包括IEEE标准、美国ANSI标准以及ISO国际标准。就在四年之后的那一年,Bill Hetzel在他的文章《软件测试完全指南》中表明:"测试所体现的是在评估一个程序或系统的性能时,通过进行任何有目的的活动来衡量该程序或系统是否达到标准。测试是对软件质量的度量。”[2]
在上世纪90年代开始,测试工具得到了广泛的应用,由此引发的对软件测试工具的需求激增。人们了解到,开发出来的测试工具一方面是有用的,另一方面相对于测试而言,是非常有好处的。再次表明,测试设备的至关重要性。到了2002年,在软件测试系统里克和斯特凡在《系统的软件测试》里,再次规范了测试的内涵:“测试是测量并改善被测软件的质量,同时要进行测试的软件设计,实施和文护工作,以此来文持整个软件测试的一系列周期循环。”[3]
在总结前人的经典理论和叙述基础上,我们可以对软件测试的具体定义作出如下结论:软件测试是使用人工或自动手段,衡量一个程序或系统的性能来实现既定的标准和一系列的活动要求,同时还要弄清预期效果与实际效果之间的差距。事实上,软件测试是验证系统是否满足为目的而建立的要求。
1.2 软件测试的分类
在现实工作中,人们软件测试做出了很多种分类,具体如下:
1 黑盒测试:
它是基于需求和功用的尝试,同时它也是在已知软件所应具有的一系列的基础上而进行一种测试的方法。简单来讲,黑盒测试所着力解决的问题主要是通过用户体验的角度来检验软件的结果。黑盒测试更关注结果。它的目的其实就是发现4种错误:
(1)功能性错误或者是摇遗漏问题 ;
(2)出现在界面的错误 ;
(3)产品出现在性能方面的错误 ;
(4)初始化产品出现的错误或终止结束产品时出现的错误。
2 白盒测试:称为结构性的测试,是指知晓了所测产品程序的内部理论,与此同时还包含了代码方面的测试 。
3 单元测试:测试的是最小的功能或是对一个小模块的测试 。
4 增量集成测试:在对一个新特性进行测试后,增加其他特性进行测试 。
5 集成测试:为每个程序的组合所做的测试的一部分 。
6 功能测试:黑盒测试主要分析软件功能方面的测试需求。
7 系统测试:黑盒测试中,基于全部需求规范,涵盖每个系统的组合部分。
8 健全性测试:通常作为一个初始测试,用来确定一个新的软件版本能否正常应对一个更强大的测试。
9 回归测试:在软件修理或调整后的环境测试,确认测试工具能否适合这种类型。
10 认同测试:基于终端客户手册,或使用的最后阶段测试基于最终客户/消费者。 软件测试方法的应用与研究(2):http://www.751com.cn/jisuanji/lunwen_36224.html