天天看点

#yyds干货盘点# 软件测试的发展

软件测试是伴随着软件技术及应用的发展而发展的,事实上自从软件出现的时候开始,也就有了软件测试。在多年的历程中,软件测试从一种似乎是无足轻重、少有关注的开发附属行为逐渐发展成为了一门学科、一个行业,建立了自己的理论、模型、方法、技术、标准、管理体系以及众多工具,成为了软件工程领域研究与实践的一个重要板块。

软件测试的起源来自对程序的调试,这是保证程序能够运行而不得不做的一件事情。在这个时期,软件的规模小,复杂程度低,程序员的调试工作基本上也就能够发现程序中的错误并加以解决。

到20世纪50年代,软件界开始意识到调试对于软件如何保证预期的实现是不够的,仅靠程序员来做这项工作缺点很大,开始萌生软件测试的概念,出现了独立于程序员的测试人员或组织。但一直到大约60年代末期,都没有形成软件测试的清晰定义,更没有软件测试相关的理论、方法或技术研究成果,当然也没有建立软件测试的标准和规范。软件测试工作依赖于测试人员的经验甚至是对错误的猜测,而且测试实施的时机很晚,这显然不能保证测试的覆盖程度和强度,不能在更早的时间发现软件缺陷,结果是在最终的软件中依然遗留有问题,同时,解决已发现缺陷的代价也异常高昂。

20世纪70年代软件测试有了比较大的发展,由于“软件危机”的爆发,软件工程的研究与实践得以兴起,在历经了之前的程序设计和软件设计阶段后,这一时期的软件开发向工程化、规模化、系列化方向发展,软件测试必须保证能满足软件开发的这些特征。1972年软件测试领域的先驱人物Bill

Hetzel 在北卡罗来纳大学组织的首届软件测试会议是一个标志性事件,可以看作是学术界和工业界系统研究软件测试的开端,1973年,

Hetzel给出了软件测试的第一个定义,其后其他学者或组织也给出了自己的定义,并展开了充分的讨论,使得软件测试的内涵得以不断优化和完善。