软件质量保证与测试(慕课版)(第2版)课件 3.6因果图法_第1页
软件质量保证与测试(慕课版)(第2版)课件 3.6因果图法_第2页
软件质量保证与测试(慕课版)(第2版)课件 3.6因果图法_第3页
软件质量保证与测试(慕课版)(第2版)课件 3.6因果图法_第4页
软件质量保证与测试(慕课版)(第2版)课件 3.6因果图法_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

软件质量保证与测试3.6因果图法第3章黑盒测试SoftwareQualityAssuranceandTesting因果图

因果图是一种将多个原因和不同结果之间的对应关系用图来表达的工具。因果图的优点是可以用图解的形式,直观的表达输入条件的组合、约束关系和输出结果之间的因果关系,因果图一般和判定表结合起来使用。程序输入输出程序原因结果因果图法

因果图法是指,从用自然语言描述的程序规格说明描述中找出因和果,用因果图来表达它们的逻辑关系,因是输入条件,果是输出或程序状态的改变,也就是表达当输入是什么的情况下,结果会是什么?然后根据因果图写出判定表,再由判定表来设计测试用例的方法。程序规格因果图判定表测试用例因果图法如果由程序规格说明可以较为容易的得出判定表,那就不必先画因果图,而是可以直接利用判定表驱动法来设计测试用例了,但在较为复杂的问题中,因果图法常常是十分有效的。

例如:在输入条件比较多的情况下,直接使用判定表可能会产生过多的条件组合,从而导致判定表的列数太多。实际上,这些条件之间可能会存在约束条件,所以很多条件的组合是无效的,也就是说,它们在判定表中完全是多余的。此时,可先画出因果图,下一步根据因果图画出判定表时,就可以有意识地排除掉这些无效的条件组合,从而会使判定表的列数大幅度减少。因果图法因果图的画法

在因果图中,通常:用Ci表示原因,置于图的左部;用Ei表示结果,置于图的右部。Ci和Ei均可取值0或1,0表示某状态不出现,1表示某状态出现。原因和结果之间以直线连接。①恒等:若原因出现,则结果出现;若原因不出现,则结果也不出现。②非(~):若原因出现,则结果不出现;若原因不出现,则结果出现。(1)关系

或(∨):若几个原因中有1个出现,则结果出现;若几个原因都不出现,则结果不出现。

④与(∧):若几个原因都出现,结果才出现。若其中有1个原因不出现,则结果不出现。(1)关系(2)约束

各个输入条件相互之间还可能存在某种关系,称为约束。例如:某些输入条件不可能同时出现。输出状态之间也往往存在约束。在因果图中,用特定的符号标明这些约束。A.输入条件的约束有以下4类:

①E约束(互斥):表示不同时为1,即a,b,c中至多只有一个1;②I约束(包含):表示至少有一个1,即a,b,c中不同时为0;③O约束(唯一):表示a,b,c中有且仅有一个1;

④R约束(要求):表示若a=1,则b必须为1。即不可能a=1且b=0;(2)约束acbEacbacbROIab唯一互斥包含要求(2)约束(2)约束B.输出条件约束类型

输出条件的约束只有M约束(屏蔽):若结果a是1,则结果b强制为0。Mab屏蔽

对于规模比较大的程序来说,由于输入条件的组合数太大,所以很难整体上使用一个因果图。此时可以把它划分为若干部分,然后分别对每个部分画出因果图。因果图的画法采用因果图法设计测试用例的步骤(1)分析软件规格说明描述中,哪些是原因,原因即输入条件或输入条件的等价类,哪些是结果,结果即操作和输出,并给每个原因和结果赋予一个标识符。采用因果图法设计测试用例的步骤

需要注意的是原因和结果都需要原子化。例如:职称是工程师的男职工基本工资加100,奖金加50。这一条软件规格说明描述中,原因有两个:

职称=工程师,

性别=男;结果也是两个:

基本工资=基本工资+100,

奖金=奖金+50。(2)分析软件规格说明描述中的语义,找出原因与结果之间,原因与原因之间的关系,并根据这些关系,画出因果图。

(3)标明约束条件。由于某种限制,有些原因与原因之间,原因与结果之间的组合情况不可能出现,所以为表明这些特殊的情况,应在因果图上使用标准的符号来标记约束条件。

采用因果图法设计测试用例的步骤(4)把因果图转换为判定表。(5)根据判定表设计测试用例。采用因果图法设计测试用例的步骤判定表测试用例因果图判定表因果图法测试用例设计实例

有一个处理单价为5角钱的饮料自动售货机软件。请用因果图法为此软件设计测试用例。其规格说明如下:若投入5角钱或1元钱的硬币,按下〖橙汁〗或〖啤酒〗的按钮,则相应的饮料就送出来。若售货机没有零钱找,则一个显示〖零钱找完〗的红灯亮,这时在投入1元硬币并按下按钮后,饮料不送出来而且1元硬币也退出来;若有零钱找,则显示〖零钱找完〗的红灯灭,在送出饮料的同时退还5角硬币。

(1)分析这一自动售货机软件的规格说明,列出原因和结果。原因:1.售货机有零钱找2.投入1元硬币

3.投入5角硬币4.按下橙汁按钮5.按下啤酒按钮结果:1.售货机〖零钱找完〗灯亮2.退还1元硬币

3.退还5角硬币4.送出橙汁饮料

5.送出啤酒饮料因果图法测试用例设计实例(2)画出因果图。原因在左,结果在右,根据软件规格说明把原因和结果连接起来。在因果图中还可以引入一些中间节点,表示处理的中间状态。本题的中间结点如下:1.投入1元硬币且按下饮料按钮2.已按下按钮(〖橙汁〗或〖啤酒〗)3.应当找5角零钱并且售货机有零钱找4.钱已付清因果图法测试用例设计实例(3)在因果图中加上约束条件因果图法测试用例设计实例(4)把因果图转换成判定表因果图法测试用例

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论