浙江大学软件测试教程文档

上传人:平*** 文档编号:46325843 上传时间:2018-06-25 格式:PPT 页数:60 大小:654.17KB
返回 下载 相关 举报
浙江大学软件测试教程文档_第1页
第1页 / 共60页
浙江大学软件测试教程文档_第2页
第2页 / 共60页
浙江大学软件测试教程文档_第3页
第3页 / 共60页
浙江大学软件测试教程文档_第4页
第4页 / 共60页
浙江大学软件测试教程文档_第5页
第5页 / 共60页
点击查看更多>>
资源描述

《浙江大学软件测试教程文档》由会员分享,可在线阅读,更多相关《浙江大学软件测试教程文档(60页珍藏版)》请在金锄头文库上搜索。

1、第第 2 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.1 2.1 软件测试贯穿于整个的软软件测试贯穿于整个的软 件开发生命周期件开发生命周期2.1.1 2.1.1 软件测试中使用的各种术语软件测试中使用的各种术语软件错误软件错误软件缺陷软件缺陷软件

2、故障软件故障软件失效软件失效2.1.2 2.1.2 软件测试贯穿于整个的软件软件测试贯穿于整个的软件 开发生命周期开发生命周期2020世纪世纪7070年代中期以来,形成了软件开年代中期以来,形成了软件开 发生命周期的概念。发生命周期的概念。 测试工作应该着眼于整个软件开发生命测试工作应该着眼于整个软件开发生命 周期,特别是着眼于编码以前各开发阶段的周期,特别是着眼于编码以前各开发阶段的 工作来保证软件的质量。也就是说,测试应工作来保证软件的质量。也就是说,测试应 该从软件开发生命周期的第一个阶段开始,该从软件开发生命周期的第一个阶段开始, 并贯穿于整个的软件开发生命周期。并贯穿于整个的软件开发

3、生命周期。谈到测试,首先是为什么要进行测试谈到测试,首先是为什么要进行测试的问题。所有的测试都是为了发现和消除的问题。所有的测试都是为了发现和消除软件的缺陷。软件的缺陷。 明确为什么要进行软件测试的问题之明确为什么要进行软件测试的问题之后,就需要明确测试什么的问题。后,就需要明确测试什么的问题。 软件的开发有其自己的生命周期,在软件的开发有其自己的生命周期,在 整个软件生命周期中,软件都有各自的相整个软件生命周期中,软件都有各自的相 对于各生命周期的阶段性的输出结果,其对于各生命周期的阶段性的输出结果,其 中也包括需求分析、概要设计、详细设计中也包括需求分析、概要设计、详细设计 及程序编码等各

4、阶段所产生的文档,包括及程序编码等各阶段所产生的文档,包括 需求规格说明、概要设计规格说明、详细需求规格说明、概要设计规格说明、详细 设计规格说明以及源程序,而所有这些输设计规格说明以及源程序,而所有这些输 出结果都应成为被测试的对象。出结果都应成为被测试的对象。 随着人们对软件工程化的重视以及软随着人们对软件工程化的重视以及软 件规模的日益扩大,软件分析、设计的作件规模的日益扩大,软件分析、设计的作 用越来越突出,而且有资料表明,用越来越突出,而且有资料表明,60%60%以以 上的软件错误并不是程序错误,而是分析上的软件错误并不是程序错误,而是分析 和设计错误。因此,做好软件需求和设计和设计

5、错误。因此,做好软件需求和设计 阶段的测试工作就显得非常重要。这就是阶段的测试工作就显得非常重要。这就是 传统的测试概念的扩大化,从而提出了软传统的测试概念的扩大化,从而提出了软 件全生命周期测试的概念。件全生命周期测试的概念。测试过程包括了软件开发生命周期的测试过程包括了软件开发生命周期的 每个阶段。在需求阶段,重点要确认需求每个阶段。在需求阶段,重点要确认需求 定义是否符合用户的需要;在设计和编程定义是否符合用户的需要;在设计和编程 阶段,重点要确定设计和编程是否符合需阶段,重点要确定设计和编程是否符合需 求定义;在测试和安装阶段,重点是审查求定义;在测试和安装阶段,重点是审查 系统执行是

6、否符合系统规格说明;在维护系统执行是否符合系统规格说明;在维护 阶段,要重新测试系统,以确定更改的部阶段,要重新测试系统,以确定更改的部 分和没有更改的部分是否都正常工作。分和没有更改的部分是否都正常工作。2.1.3 2.1.3 软件测试的手段软件测试的手段1 1验证和确认验证和确认通常在测试中,使用验证来检查中间可通常在测试中,使用验证来检查中间可 交付的结果,使用确认来评估可执行代码交付的结果,使用确认来评估可执行代码 的性能。一般来说,验证回答这样的问题的性能。一般来说,验证回答这样的问题 :“ “是否建立了正确的系统?是否建立了正确的系统?” ”,而确认回,而确认回 答的问题是:答的问

7、题是:“ “建立的系统是否正确?建立的系统是否正确?” ”。所谓验证,是指如何决定软件开发的每所谓验证,是指如何决定软件开发的每 个阶段、每个步骤的产品是否正确无误,个阶段、每个步骤的产品是否正确无误, 并与其前面的开发阶段和开发步骤的产品并与其前面的开发阶段和开发步骤的产品 相一致。验证工作意味着在软件开发过程相一致。验证工作意味着在软件开发过程 中开展一系列活动,旨在确保软件能够正中开展一系列活动,旨在确保软件能够正 确无误地实现软件的需求。确无误地实现软件的需求。所谓确认,是指如何决定最后的软件所谓确认,是指如何决定最后的软件 产品是否正确无误。产品是否正确无误。 2 2功能和结构测试功

8、能和结构测试当测试人员测试项目小组的解决方案当测试人员测试项目小组的解决方案时,将利用验证和确认技术完成功能和结时,将利用验证和确认技术完成功能和结构测试。功能测试通常也被称为黑盒测试构测试。功能测试通常也被称为黑盒测试,因为测试案例中都不涉及系统的内部逻,因为测试案例中都不涉及系统的内部逻辑。辑。 相反,结构测试通常被称为白盒测试相反,结构测试通常被称为白盒测试 ,因为系统的内部逻辑常被用于假想的测,因为系统的内部逻辑常被用于假想的测 试案例。结构测试主要使用验证技术。试案例。结构测试主要使用验证技术。 如上所述,测试人员用验证技术,通如上所述,测试人员用验证技术,通 过评审系统的结构和逻辑

9、来确认系统的合过评审系统的结构和逻辑来确认系统的合 理性。而确认要严格应用于物理测试,来理性。而确认要严格应用于物理测试,来 确定是否产生了预期的结果。执行结构测确定是否产生了预期的结果。执行结构测 试将主要使用验证技术,而执行功能测试试将主要使用验证技术,而执行功能测试 则主要使用确认技术。则主要使用确认技术。 2.2 2.2 测测 试试 模模 型型就像软件开发有过程模型一样,测试就像软件开发有过程模型一样,测试也有测试模型。也有测试模型。描述以上测试过程的就是测试模型。描述以上测试过程的就是测试模型。最具有代表意义的测试模型称为最具有代表意义的测试模型称为V V模型模型 。V V模型如图模

10、型如图2-12-1所示。所示。图2-1 V模型示意图 在开发过程中,从需求阶段到编码阶段,在开发过程中,从需求阶段到编码阶段, 主要是采用验证手段进行测试,如需求评审主要是采用验证手段进行测试,如需求评审 、设计评审、代码走查以及代码审查等,从、设计评审、代码走查以及代码审查等,从 而完成对开发的中间结果的正确性的评估。而完成对开发的中间结果的正确性的评估。 编码完成并经过代码审查等测试之后,此时编码完成并经过代码审查等测试之后,此时 的测试主要在软件的可执行模式下进行,即的测试主要在软件的可执行模式下进行,即 利用确认手段进行测试,确认测试包括单元利用确认手段进行测试,确认测试包括单元 测试

11、、集成测试、系统测试以及用户验收测测试、集成测试、系统测试以及用户验收测 试等,其相应的关系如图试等,其相应的关系如图2-22-2所示。所示。图2-2 V模型中的测试 2.3 2.3 软件测试的分类软件测试的分类按照不同的分类方法,软件测试可分按照不同的分类方法,软件测试可分 为以下几种类型。为以下几种类型。1 1按照开发阶段划分按照开发阶段划分按照开发阶段划分,软件测试可分为单元按照开发阶段划分,软件测试可分为单元 测试、集成测试、系统测试和验收测试。测试、集成测试、系统测试和验收测试。2 2按照测试实施组织划分按照测试实施组织划分按照测试实施组织划分,软件测试可分按照测试实施组织划分,软件

12、测试可分为开发方测试、用户测试(为开发方测试、用户测试( 测试)和第三测试)和第三方测试。方测试。3 3按照测试技术划分按照测试技术划分按照测试技术划分,软件测试可分为按照测试技术划分,软件测试可分为白盒测试和黑盒测试,也可分为静态测试白盒测试和黑盒测试,也可分为静态测试和动态测试。和动态测试。 2.4 2.4 软件测试的原则软件测试的原则软件测试的原则尚没有标准的说法,软件测试的原则尚没有标准的说法, 大多是经验之谈,一般有下面几条可作为大多是经验之谈,一般有下面几条可作为 测试的基本原则。测试的基本原则。 (1 1)所有的测试都应追溯到用户需求。)所有的测试都应追溯到用户需求。 (2 2)

13、应当把)应当把“ “尽早地和不断地进行软件测尽早地和不断地进行软件测 试试” ”作为软件测试者的座右铭。作为软件测试者的座右铭。(3 3)设计时应完成测试计划,详细的测试)设计时应完成测试计划,详细的测试 用例定义可在设计模型确定后开始,测试可用例定义可在设计模型确定后开始,测试可 在代码产生之前进行计划和设计。在代码产生之前进行计划和设计。 (4 4)paretopareto原则:测试发现的错误中原则:测试发现的错误中80%80%很很 可能起源于可能起源于20%20%的模块中。应孤立这些疑点的模块中。应孤立这些疑点 模块,进行重点测试。模块,进行重点测试。 (5 5)完全测试是不可能的,测试

14、需要终止)完全测试是不可能的,测试需要终止 。(6 6)应由独立的第三方来构造测试。)应由独立的第三方来构造测试。 (7 7)充分注意测试中的群集现象。)充分注意测试中的群集现象。 (8 8)要尽量避免测试的随意性。)要尽量避免测试的随意性。 (9 9)兼顾合理的输入和不合理的输入数据。)兼顾合理的输入和不合理的输入数据。 (1010)程序修改后要回归测试)程序修改后要回归测试 (1111)应长期保留测试用例,直至系统废弃。)应长期保留测试用例,直至系统废弃。2.5 2.5 软软 件件 测测 试试 策策 略略软件测试策略描述软件测试活动的总软件测试策略描述软件测试活动的总 体方法和目标。体方法

15、和目标。为了检验开发的软件能否符合规格说明为了检验开发的软件能否符合规格说明 书的要求,测试活动可以采用各种不同的书的要求,测试活动可以采用各种不同的 策略。这些策略的区别在于它们表明了不策略。这些策略的区别在于它们表明了不 同的出发点、不同的思路以及采用不同的同的出发点、不同的思路以及采用不同的 手段和方法。具体地说,包括要使用的测手段和方法。具体地说,包括要使用的测 试技术和工具;测试完成标准;影响资源试技术和工具;测试完成标准;影响资源 分配的特殊考虑等。分配的特殊考虑等。通常,制定软件测试策略要考虑如下的内容。通常,制定软件测试策略要考虑如下的内容。 (1 1)要使用的测试方法。)要使

16、用的测试方法。 (2 2)确定质量风险。)确定质量风险。 (3 3)测试完成和测试成功所采用的评价标准。)测试完成和测试成功所采用的评价标准。 (4 4)有关资源要求或涉及进度的特殊考虑。)有关资源要求或涉及进度的特殊考虑。 (5 5)测试类型、评估标准以及测试方法。)测试类型、评估标准以及测试方法。 (6 6)确定资源。)确定资源。在软件测试策略所包含的内容中最主要在软件测试策略所包含的内容中最主要 的部分有两个,一是要进行的测试过程,的部分有两个,一是要进行的测试过程, 另外一个就是要执行的测试类型。另外一个就是要执行的测试类型。1 1测试过程测试过程共分为以下共分为以下4 4个过程。个过程。单元测试单元测试集成测试集成测试系统测试系统测试验收测试验收测试2 2测试类型测试类型对于测试类型的说法多种多样,最多的对于测试类型的说法多种多样,最多的 能有能有3030多种测试

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号