软件工程-测试第02章.ppt
《软件工程-测试第02章.ppt》由会员分享,可在线阅读,更多相关《软件工程-测试第02章.ppt(60页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第 2 章章 软件测试的基本知识软件测试的基本知识 2.1 2.1 软件测试贯穿于整个的软件开发生命周期软件测试贯穿于整个的软件开发生命周期软件测试贯穿于整个的软件开发生命周期软件测试贯穿于整个的软件开发生命周期2.2 2.2 测测测测 试试试试 模模模模 型型型型2.3 2.3 软件测试的分类软件测试的分类软件测试的分类软件测试的分类2.4 2.4 软件测试的原则软件测试的原则软件测试的原则软件测试的原则2.5 2.5 软软软软 件件件件 测测测测 试试试试 策策策策 略略略略2.6 2.6 软软软软 件件件件 测测测测 试试试试 流流流流 程程程程2.7 2.7 测试的成功经验测试的成功
2、经验测试的成功经验测试的成功经验2.1 软件测试贯穿于整个的软软件测试贯穿于整个的软件开发生命周期件开发生命周期2.1.1 软件测试中使用的各种术语软件测试中使用的各种术语 软件错误软件错误 软件缺陷软件缺陷 软件故障软件故障 软件失效软件失效 2.1.2 软软件件测测试试贯贯穿穿于于整整个个的的软软件件开发生命周期开发生命周期 20世纪世纪70年代中期以来,形成了软件开年代中期以来,形成了软件开发生命周期的概念。发生命周期的概念。测测试试工工作作应应该该着着眼眼于于整整个个软软件件开开发发生生命命周周期期,特特别别是是着着眼眼于于编编码码以以前前各各开开发发阶阶段段的的工工作作来来保保证证软
3、软件件的的质质量量。也也就就是是说说,测测试试应应该该从从软软件件开开发发生生命命周周期期的的第第一一个个阶阶段段开开始始,并贯穿于整个的软件开发生命周期。并贯穿于整个的软件开发生命周期。谈到测试,首先是为什么要进行测试谈到测试,首先是为什么要进行测试的问题。所有的测试都是为了发现和消除的问题。所有的测试都是为了发现和消除软件的缺陷。软件的缺陷。明确为什么要进行软件测试的问题之明确为什么要进行软件测试的问题之后,就需要明确测试什么的问题。后,就需要明确测试什么的问题。软件的开发有其自己的生命周期,在软件的开发有其自己的生命周期,在整个软件生命周期中,软件都有各自的相整个软件生命周期中,软件都有
4、各自的相对于各生命周期的阶段性的输出结果,其对于各生命周期的阶段性的输出结果,其中也包括需求分析、概要设计、详细设计中也包括需求分析、概要设计、详细设计及程序编码等各阶段所产生的文档,包括及程序编码等各阶段所产生的文档,包括需求规格说明、概要设计规格说明、详细需求规格说明、概要设计规格说明、详细设计规格说明以及源程序,而所有这些输设计规格说明以及源程序,而所有这些输出结果都应成为被测试的对象。出结果都应成为被测试的对象。随随着着人人们们对对软软件件工工程程化化的的重重视视以以及及软软件件规规模模的的日日益益扩扩大大,软软件件分分析析、设设计计的的作作用用越越来来越越突突出出,而而且且有有资资料
5、料表表明明,60%以以上上的的软软件件错错误误并并不不是是程程序序错错误误,而而是是分分析析和和设设计计错错误误。因因此此,做做好好软软件件需需求求和和设设计计阶阶段段的的测测试试工工作作就就显显得得非非常常重重要要。这这就就是是传传统统的的测测试试概概念念的的扩扩大大化化,从从而而提提出出了了软软件全生命周期测试的概念。件全生命周期测试的概念。测试过程包括了软件开发生命周期的测试过程包括了软件开发生命周期的每个阶段。在需求阶段,重点要确认需求每个阶段。在需求阶段,重点要确认需求定义是否符合用户的需要;在设计和编程定义是否符合用户的需要;在设计和编程阶段,重点要确定设计和编程是否符合需阶段,重
6、点要确定设计和编程是否符合需求定义;在测试和安装阶段,重点是审查求定义;在测试和安装阶段,重点是审查系统执行是否符合系统规格说明;在维护系统执行是否符合系统规格说明;在维护阶段,要重新测试系统,以确定更改的部阶段,要重新测试系统,以确定更改的部分和没有更改的部分是否都正常工作。分和没有更改的部分是否都正常工作。2.1.3 软件测试的手段软件测试的手段1验证和确认验证和确认 通通常常在在测测试试中中,使使用用验验证证来来检检查查中中间间可可交交付付的的结结果果,使使用用确确认认来来评评估估可可执执行行代代码码的的性性能能。一一般般来来说说,验验证证回回答答这这样样的的问问题题:“是是否否建建立立
7、了了正正确确的的系系统统?”,而而确确认认回回答的问题是:答的问题是:“建立的系统是否正确?建立的系统是否正确?”。所所谓谓验验证证,是是指指如如何何决决定定软软件件开开发发的的每每个个阶阶段段、每每个个步步骤骤的的产产品品是是否否正正确确无无误误,并并与与其其前前面面的的开开发发阶阶段段和和开开发发步步骤骤的的产产品品相相一一致致。验验证证工工作作意意味味着着在在软软件件开开发发过过程程中中开开展展一一系系列列活活动动,旨旨在在确确保保软软件件能能够够正正确无误地实现软件的需求。确无误地实现软件的需求。所谓确认,是指如何决定最后的软件所谓确认,是指如何决定最后的软件产品是否正确无误。产品是否
8、正确无误。2功能和结构测试功能和结构测试 当测试人员测试项目小组的解决方案当测试人员测试项目小组的解决方案时,将利用验证和确认技术完成功能和结时,将利用验证和确认技术完成功能和结构测试。功能测试通常也被称为黑盒测试,构测试。功能测试通常也被称为黑盒测试,因为测试案例中都不涉及系统的内部逻辑。因为测试案例中都不涉及系统的内部逻辑。相反,结构测试通常被称为白盒测试,相反,结构测试通常被称为白盒测试,因为系统的内部逻辑常被用于假想的测试因为系统的内部逻辑常被用于假想的测试案例。结构测试主要使用验证技术。案例。结构测试主要使用验证技术。如上所述,测试人员用验证技术,通如上所述,测试人员用验证技术,通过
9、评审系统的结构和逻辑来确认系统的合过评审系统的结构和逻辑来确认系统的合理性。而确认要严格应用于物理测试,来理性。而确认要严格应用于物理测试,来确定是否产生了预期的结果。执行结构测确定是否产生了预期的结果。执行结构测试将主要使用验证技术,而执行功能测试试将主要使用验证技术,而执行功能测试则主要使用确认技术。则主要使用确认技术。2.2 测测 试试 模模 型型 就像软件开发有过程模型一样,测试就像软件开发有过程模型一样,测试也有测试模型。也有测试模型。描述以上测试过程的就是测试模型。描述以上测试过程的就是测试模型。最最具具有有代代表表意意义义的的测测试试模模型型称称为为V模模型型。V模型如图模型如图
10、2-1所示。所示。图2-1 V模型示意图 在在开开发发过过程程中中,从从需需求求阶阶段段到到编编码码阶阶段段,主主要要是是采采用用验验证证手手段段进进行行测测试试,如如需需求求评评审审、设设计计评评审审、代代码码走走查查以以及及代代码码审审查查等等,从从而而完完成成对对开开发发的的中中间间结结果果的的正正确确性性的的评评估估。编编码码完完成成并并经经过过代代码码审审查查等等测测试试之之后后,此此时时的的测测试试主主要要在在软软件件的的可可执执行行模模式式下下进进行行,即即利利用用确确认认手手段段进进行行测测试试,确确认认测测试试包包括括单单元元测测试试、集集成成测测试试、系系统统测测试试以以及
11、及用用户户验验收收测测试试等,其相应的关系如图等,其相应的关系如图2-2所示。所示。图2-2 V模型中的测试 2.3 软件测试的分类软件测试的分类 按照不同的分类方法,软件测试可分按照不同的分类方法,软件测试可分为以下几种类型。为以下几种类型。1按照开发阶段划分按照开发阶段划分按按照照开开发发阶阶段段划划分分,软软件件测测试试可可分分为为单单元元测试、集成测试、系统测试和验收测试。测试、集成测试、系统测试和验收测试。2按照测试实施组织划分按照测试实施组织划分 按按照照测测试试实实施施组组织织划划分分,软软件件测测试试可可分分为为开开发发方方测测试试、用用户户测测试试(测测试试)和和第第三三方测
12、试。方测试。3按照测试技术划分按照测试技术划分 按照测试技术划分,软件测试可分为按照测试技术划分,软件测试可分为白盒测试和黑盒测试,也可分为静态测试白盒测试和黑盒测试,也可分为静态测试和动态测试。和动态测试。2.4 软件测试的原则软件测试的原则 软件测试的原则尚没有标准的说法,软件测试的原则尚没有标准的说法,大多是经验之谈,一般有下面几条可作为大多是经验之谈,一般有下面几条可作为测试的基本原则。测试的基本原则。(1)所有的测试都应追溯到用户需求。)所有的测试都应追溯到用户需求。(2)应应当当把把“尽尽早早地地和和不不断断地地进进行行软软件件测测试试”作为软件测试者的座右铭。作为软件测试者的座右
13、铭。(3)设设计计时时应应完完成成测测试试计计划划,详详细细的的测测试试用用例例定定义义可可在在设设计计模模型型确确定定后后开开始始,测测试试可可在代码产生之前进行计划和设计。在代码产生之前进行计划和设计。(4)pareto原原则则:测测试试发发现现的的错错误误中中80%很很可可能能起起源源于于20%的的模模块块中中。应应孤孤立立这这些些疑疑点点模块,进行重点测试。模块,进行重点测试。(5)完全测试是不可能的,测试需要终止。)完全测试是不可能的,测试需要终止。(6)应由独立的第三方来构造测试。)应由独立的第三方来构造测试。(7)充分注意测试中的群集现象。)充分注意测试中的群集现象。(8)要尽量
14、避免测试的随意性。)要尽量避免测试的随意性。(9)兼顾合理的输入和不合理的输入数据。)兼顾合理的输入和不合理的输入数据。(10)程序修改后要回归测试)程序修改后要回归测试(11)应长期保留测试用例,直至系统废弃。)应长期保留测试用例,直至系统废弃。2.5 软软 件件 测测 试试 策策 略略 软件测试策略描述软件测试活动的总软件测试策略描述软件测试活动的总体方法和目标。体方法和目标。为为了了检检验验开开发发的的软软件件能能否否符符合合规规格格说说明明书书的的要要求求,测测试试活活动动可可以以采采用用各各种种不不同同的的策策略略。这这些些策策略略的的区区别别在在于于它它们们表表明明了了不不同同的的
15、出出发发点点、不不同同的的思思路路以以及及采采用用不不同同的的手手段段和和方方法法。具具体体地地说说,包包括括要要使使用用的的测测试试技技术术和和工工具具;测测试试完完成成标标准准;影影响响资资源源分配的特殊考虑等。分配的特殊考虑等。通常,制定软件测试策略要考虑如下的内容。通常,制定软件测试策略要考虑如下的内容。(1)要使用的测试方法。)要使用的测试方法。(2)确定质量风险。)确定质量风险。(3)测试完成和测试成功所采用的评价标准。)测试完成和测试成功所采用的评价标准。(4)有关资源要求或涉及进度的特殊考虑。)有关资源要求或涉及进度的特殊考虑。(5)测试类型、评估标准以及测试方法。)测试类型、
16、评估标准以及测试方法。(6)确定资源。)确定资源。在在软软件件测测试试策策略略所所包包含含的的内内容容中中最最主主要要的的部部分分有有两两个个,一一是是要要进进行行的的测测试试过过程程,另外一个就是要执行的测试类型。另外一个就是要执行的测试类型。1测试过程测试过程 共分为以下共分为以下4个过程。个过程。单元测试单元测试 集成测试集成测试 系统测试系统测试 验收测试验收测试2测试类型测试类型 对对于于测测试试类类型型的的说说法法多多种种多多样样,最最多多的的能能有有30多多种种测测试试类类型型。而而实实际际工工作作中中很很多多测测试试是是互互相相包包含含的的。按按照照企企业业中中实实际际工工作作
17、需要,测试主要包含下面的类型。需要,测试主要包含下面的类型。功能测试功能测试 健壮性测试健壮性测试 接口测试接口测试 强度测试强度测试 压力测试压力测试 性能测试性能测试 用户界面测试用户界面测试 安全测试安全测试 可靠性测试可靠性测试 安装安装/反安装测试反安装测试 11.文档测试文档测试12.恢复测试恢复测试13.兼容性测试兼容性测试14.测试测试15.测试测试2.6 软软 件件 测测 试试 流流 程程 软件测试工作必须要通过制定测试计划、软件测试工作必须要通过制定测试计划、设计测试、实施测试、执行测试、评估测设计测试、实施测试、执行测试、评估测试几个阶段来完成。其流程如图试几个阶段来完成
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 测试 02
限制150内