软件工程 第9章 软件测试.ppt
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《软件工程 第9章 软件测试.ppt》由会员分享,可在线阅读,更多相关《软件工程 第9章 软件测试.ppt(37页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第九章 软件测试【本章引言本章引言】n软件测试是对软件需求分析、设计规格说明和编码软件测试是对软件需求分析、设计规格说明和编码等的最终审核,是软件质量保证的关键步骤。如果等的最终审核,是软件质量保证的关键步骤。如果把所开发出来的软件看作一个企业生产的产品,那把所开发出来的软件看作一个企业生产的产品,那么软件测试就相当于该企业的质量检测部分,其任么软件测试就相当于该企业的质量检测部分,其任务就是检查软件产品是否如我们所预期的那样运行。务就是检查软件产品是否如我们所预期的那样运行。n软件产品种类繁多,测试过程千变万化,为了能够软件产品种类繁多,测试过程千变万化,为了能够找到系统中绝大部分的软件缺陷
2、,必须构建各种行找到系统中绝大部分的软件缺陷,必须构建各种行之有效的测试方法与策略。之有效的测试方法与策略。第九章第九章 软件测试软件测试【本章重点本章重点】n软件测试方法和策略;软件测试方法和策略;n测试用例设计;测试用例设计;【教学目标教学目标】n了解软件测试流程和方法;了解软件测试流程和方法;n熟悉测试用例的概念和编写样式;熟悉测试用例的概念和编写样式;n掌握测试报告设计方法和书写标准;掌握测试报告设计方法和书写标准;n灵活运用黑盒测试、白盒测试的各种具体策略进行实灵活运用黑盒测试、白盒测试的各种具体策略进行实例设计。例设计。第九章第九章 软件测试软件测试n 9.1 9.1 软件测试的基
3、本概念软件测试的基本概念n 9.2 9.2 软件测试方法软件测试方法 n 9.3 9.3 软件测试流程软件测试流程 n 9.4 9.4 测试用例的设计测试用例的设计 n 9.5 9.5 面向对象软件测试面向对象软件测试 n 9.6 9.6 软件测试相关文档软件测试相关文档 n 9.7 9.7 小结小结 n 9.8 9.8 习题习题 9.1 软件测试的基本概念软件测试的基本概念 n9.1.1 9.1.1 软件测试的定义软件测试的定义 通常对软件测试的定义有如下描述:软件测试是为了发现程序中的错误而执行程序的过程。具体说,它是根据软件开发各阶段的规格说明和程序的内部结构而精心设计出一批测试用例,并
4、利用测试用例来运行程序,以发现程序错误的过程。9.1 软件测试的基本概念软件测试的基本概念9.1.2 9.1.2 软件测试的原则软件测试的原则 n根据这样的测试目的,软件测试的原则应该是:(1)应当把尽早地和不断地进行软件测试作为软件开发者的座右铭。坚持在软件开发的各个阶段的技术评审,这样才能在开发过程中尽早发现和预防错误,把出现的错误克服在早期,杜绝某些隐患,提高软件质量。(2)测试用例应由测试输入数据和与之对应的预期输出结果这两部分组成。如果对测试输入数据没有给出预期的程序输出结果,那么就缺少了检验实测结果的基准,就有可能把一个似是而非的错误结果当成正确结果。9.1 软件测试的基本概念软件
5、测试的基本概念(3)程序员应避免检查自己的程序。如果由别人来测试程序员编写的程序,可能会更客观,更有效,并更容易取得成功。(4)在设计测试用例时,应当包括合理的输入条件和不合理的输入条件。合理的输入条件是指能验证程序正确的输入条件,而不合理的输入条件是指异常的,临界的,可能引起问题变异的输入条件。(5)充分注意测试中的群集现象。测试时不要以为找到了几个错误问题就已解决,不需继续测试了。应当对错误群集的程序段进行重点测试,以提高测试投资的效益。9.1 软件测试的基本概念软件测试的基本概念(6)严格执行测试计划,排除测试的随意性。对于测试计划,要明确规定,不要随意解释。(7)应当对每一个测试结果做
6、全面检查。这是一条最明显的原则,但常常被忽视。必须对预期的输出结果明确定义,对实测的结果仔细分析检查,抓住关键,暴露错误。(8)妥善保存测试计划,测试用例,出错统计和最终分析报告,为维护提供方便。9.2 软件测试方法软件测试方法 9.2.19.2.1静态测试与动态测试静态测试与动态测试n1 1静态测试静态测试n静态测试包括代码检查、静态结构分析、代码质量度量静态测试包括代码检查、静态结构分析、代码质量度量等。它可以由人工进行,充分发挥人的逻辑思维优势,等。它可以由人工进行,充分发挥人的逻辑思维优势,也可以借助软件工具自动进行。也可以借助软件工具自动进行。n2 2动态测试动态测试n选取定义域的有
7、效值,或选取定义域外的无效值;选取定义域的有效值,或选取定义域外的无效值;n对已选取值决定预期的结果;对已选取值决定预期的结果;n用选取值执行程序;用选取值执行程序;n执行结果与预期的结果相比,不吻合则说明程序有错。执行结果与预期的结果相比,不吻合则说明程序有错。9.2 软件测试方法软件测试方法9.2.2 9.2.2 黑盒测试黑盒测试1 1等价类划分法等价类划分法 n等价类测试可以按照以下步骤进行:n为每一个等价类规定一个唯一的编号;n设计一个新的测试用例,使其尽可能多地覆盖尚未被覆盖的有效等价类,重复这个过程,直至所有的有效等价类均被测试用例所覆盖;n设计一个新的测试用例,使其仅覆盖一个无效
8、等价类,重复这个过程,直至所有的无效等价类均被测试用例所覆盖。n针对是否对无效数据进行测试,可以将等价类测试分为标准等价类测试和健壮等价类测试。9.2 软件测试方法软件测试方法2 2边界值分析法边界值分析法n边界值分析法是一种补充等价类划分法的测试用例设计技术,它不是选择等价类的任意元素,而是选择等价类边界的测试用例。在测试过程中,可能会忽略边界值的条件,大量的错误是发生在输入或输出范围的边界上,而不是发生在输入输出范围的内部。因此针对各种边界情况设计测试用例,可以查出更多的错误。9.2 软件测试方法软件测试方法3.3.因果图法因果图法 9.2 软件测试方法软件测试方法恒等:若恒等:若C1C1
9、是是1 1,则,则E1E1也是也是1 1,否则,否则E1E1为为0 0。非:若非:若C1C1是是1 1,则,则E1E1是是0 0,否则,否则E1E1为为1 1。或:若或:若C1C1或或C2C2或或C3C3是是1 1,则,则E1E1是是1 1,否则,否则E1E1为为0 0。与:若与:若C1C1和和C2C2都是都是1 1,则,则E1E1是是1 1,否则,否则E1E1为为0 0。9.2 软件测试方法软件测试方法4 4决策表法决策表法 n在所有的黑盒测试方法中,基于决策表的测试是最为严格、最具有逻辑性的测试方法。决策表是分析和表达多个逻辑条件下执行不同操作的情况下的工具。在程序设计发展的初期,决策表就
10、已被当作编写程序的辅助工具了。由于它可以把复杂的逻辑关系和多种条件组合的情况表达得既具体又明确。9.2 软件测试方法软件测试方法黑盒测试实例黑盒测试实例 n【测试问题1】:某软件的一个模块的需求规格说明书中描述:某软件的一个模块的需求规格说明书中描述:“对于功率大于对于功率大于60马力的机器或者维修记马力的机器或者维修记录不全的或者已经运行录不全的或者已经运行8年以上的机器应予以年以上的机器应予以优先维修处理优先维修处理”(这里假定(这里假定“维修记录不维修记录不全全”和和“优先维修处理优先维修处理”有严格的定义)。有严格的定义)。符合上述条件的软件输出信息符合上述条件的软件输出信息“优先维修
11、处理优先维修处理”,其他情况输出信息,其他情况输出信息“N”。请建立该需求的因果图和化简(合并规则)后请建立该需求的因果图和化简(合并规则)后的决策表,并设计相应测试用例。的决策表,并设计相应测试用例。9.2 软件测试方法软件测试方法【解答解答】:n分析程序的规格说明,列出原因和结果,如表分析程序的规格说明,列出原因和结果,如表9-1所示。所示。n表表9-1 测试问题测试问题1的因果条件的因果条件n原因结果原因结果C1:大于:大于60马力马力e1:优先维修处理:优先维修处理C2:维修记录不全:维修记录不全e2:NC3:运行:运行8年以上将因果年以上将因果图转换成决策表(化简后),如表图转换成决
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 第9章 软件测试 软件 测试
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内