一、 软件质量保证与测试的产生
1. 软件测试的概念
使用人工或自动的手段来运行或测定某个软件系统的过程,其目的在于检验它是否满足规定的需求或弄清预期结果与实际结果之间的差别。
2.软件质量保证的概念
软件质量保证是为保证产品和服务充分满足消费者要求的质量而进行的有计划、有组织的活动,它贯穿于整个软件过程 。
3.理解软件测试与质量保证的关系
软件测试是软件质量保证中重要的一项活动,但软件质量保证不仅仅包括软件测试,还包括检查、评审等其他很多活动。
软件质量保证也不仅仅只是测试人员的工作,它需要专职的软件质量保证人员,也需要软件开发人员参与相关工作。
软件质量保证活动:
(1)提出对软件质量的要求,并将其分解为可以度量和控制的质量要素
(2)研究并选用软件开发方法和工具
(3)对软件生存周期各阶段进行正式技术评审
(4)制定并实施软件测试策略和测试计划
(5)及时生成软件文档并进行其版本控制
(6)保证软件开发过程与选用的软件开发标准相一致
(7)建立软件质量要素的度量机制
(8)记录SQA的各项活动,并生成各种SQA报告
4.产生与发展的过程
1957年前
测试=调试
软件测试是伴随着软件的产生而产生的。早期的软件软件规模小、复杂程度低,软件开发的过程相当随意,开发人员将软件测试等同于“调试”,常常由开发人员自己完成这部分工作。
总体而言,跟软件测试相关的工作投入极少,测试工作介入也晚,常常是等到代码编写出来,产品已经基本完成时才进行测试。
1957年
测试≠ 调试
直到1957年,软件测试才开始与调试区别开来,成为一种专门致力于发现软件缺陷的活动。也缺乏有效的测试方法,主要依靠“错误推测 Error Guessing”来寻找软件中的缺陷。
1972年
第一次软件测试会议
1972年,软件测试领域的先驱Bill Hetzel(比尔 黑则尔)博士在美国的北卡罗来纳大学组织了历史上第一次正式的关于软件测试的会议。
1973年
第一类方法
1973年,他首先给软件测试一个这样的定义:“就是建立一种信心,认为程序能够按预期的设想运行”。
核心观点:软件测试是试图验证软件是“工作的”,所谓“工作的”就是指软件的功能是按照预先的设计执行的。 这是以正向思维方式,针对软件系统的所有功能点,逐个验证其正确性。被称为第一类方法。
1975年
软件测试研究方向
1975 年 约翰·古迪纳夫 和 苏珊·格哈特 在 IEEE 上发表了“测试数据选择的原理 ”一文,软件测试才被确定为一种研究方向。
1979年
第