文档介绍:软件测试
第一章软件测试导论
第二章软件测试技术
第三章软件测试用例的设计方法
第四章软件测试的过程方法
软件测试的基本概念
软件测试的依据与人员组织
软件测试的生命周期与模型
软件测试计划及其相关文档
第一章软件测试导论
软件测试的定义
软件测试的必要性
软件缺陷
软件测试的原则
软件测试的误区
软件测试与软件质量保证的关系
软件测试技术的发展
软件测试的基本概念
软件质量是软件的生命。为了保证软件的质量,人们在长期的软件开发过程中积累了许多经验,形成了许多有效的方法(技术的和管理的)。但是借助这些方法,只能减少软件中的错误和不足,但不能完全避免错误。
技术:软件开发技术, 软件测试属于技术
管理:软件项目管理
软件产品特点:无形性、逻辑性、复杂性,
一般产品质量通过参数确定,软件产品?
软件测试的基本概念
1. 什么是软件测试
软件测试就是在软件投入运行前,对软件需求分析、架构设计和编码实现的最终复审,是软件质量保证的关键。对软件测试的定义很多,但一般可描述如下:
软件测试是根据软件开发各阶段的规格说明和程序的内部结构而精心设计一组测试用例,利用测试用例去运行程序,以发现程序错误的过程。简言之,软件测试是为了发现错误而执行程序的过程。
软件测试的定义
1. 什么是软件测试
目前,根据侧重点的不同,主要有以下三种观点:
1983年IEEE将软件测试定义为:“使用人工或自动手段运行或测定某个系统的过程,其目的在于检验它是否满足规定的需求或弄清预期结果与实际结果之间的差别”。明确地提出了软件测试是以检验软件是否满足需求为目的。
Myers认为:“是为了发现错误而执行程序的过程”。明确提出软件测试是以对软件“寻找错误”为目的。
多数软件开发商认为:软件测试是一种重要的软件质量保证活动,其动机是通过一些经济、高效的方法,捕捉软件中的错误,保证软件内在质量。明确提出软件测试是以保证软件内在质量。
软件测试的定义
概念不同:软件测试是一个在可控环境中执行软件的过程,以验证是否按预期运行。软件调试是一个分析和定位软件BUG的过程。
作用不同:调试是测试的一个基础,调试支持测试,但不能完全替代测试。
目的不同:调试使软件能正确运行,而测试是发现软件中的错误。
对象不同:调试的对象是代码,测试的对象是开发过程中的所有的产品。
软件测试的定义
3. 软件测试的目的
基于不同的立场,存在两种完全不同的测试目的。
从用户的角度,希望通过软件测试暴露软件中隐藏的错误和缺陷,以考虑是否接受该产品。
从开发者的角度,希望通过软件测试表明软件产品中不存在错误,验证软件已正确地实现了用户的要求,确立对软件质量的信心。
综合明来,测试的目的是通过对软件错误的原因和分布进行归纳,来发现并排除软件产品的缺陷,对在需求和设计过程中存在的问题查缺补漏,确保软件产品的质量。
软件测试的定义
4. 软件测试的基本职责
软件测试有两个基本职责:
一是验证:前后阶段的需求是否一致。即正向思维,所有特性功能通过,达到预期。
二是确认:满足最终需求。即反向思维,存在错误而尽力发现错误,直到找不到错误
软件测试的定义
1. 为什么要进行软件测试
软件由人开发,人会犯错误——〉软件(程序+数据+文档)都有缺陷。
无法避免人犯错,但是可以通过努力寻找隐藏在软件中的缺陷。
多、快、好、省
提高软件质量。
软件测试的必要性