因果图判定表综合练习1-支付宝

合集下载

黑盒测试技术4-因果图法

黑盒测试技术4-因果图法
❖ 与: 表示若几个原因都出现,结果才出现;若几个
e1 原因中有一个不出现,结果就不出现。 如图,若c1和c2都是1,则ei为1;否则ei为0。 “与” 可有任意个输入。
因果图的约束符号
输入条件的 4 种约束类型:
a
E
b (Exclusive)
❖ E 约束(异/互斥): 表示几个原因不会同时成立; 可能他们都不成立,但最多有一个成立。
定义
用于描述输入之间,输入输出之 用于表达多逻辑条件下执行不
间的约束关系和因果关系
同操作的情况的工具
区别
本质
考虑输入条件之间的联系、各种 考虑输入条件之间的各种组合, 组合,相应产生多个动作。 相应产生多个动作。
当输入条件 用例数量相对少(无效用例) 会产生大量测试用例 过多时 可以覆盖到条件之间的先后关系 不能覆盖条件之间的先后关系
• 根据题意,原因和结果如下:
原因
1:A < B+C 2:B < A+C 3:C < A+B 4:A = B 5:A = C 6:B = C
结果
21:不能构成三角形 22:等边三角形 23:等腰三角形 24:一般三角形
步骤2:画出因果图
原因
结果
1
1:A < B+C
21:不能构成三 角形
2
2:B < A+C 22:等边三角形 3
如图,a和b中至多有一个可能为1,即a和b不 能同时为1。
❖ I 约束(或/包含):
a 表示几个原因中至少有一个必须成立,当然也
I
b 可能都成立。
(In)
c 如图,a、b和c中至少有一个必须是1,即 a、b
和c不能同时为0。

因果图法

因果图法

实战演习
1) 分析这一段说明,列出原因和结果 原因: 1.售货机有零钱找 2.投入1元硬币 3.投入5角硬币 4.押下橙汁按钮 5.押下啤酒按钮 结果: 21.售货机〖零钱找完〗灯亮 22.退还1元硬币 23.退还5角硬币 24.送出橙汁饮料 25.送出啤酒饮料
实战演习

2) 画出因果图,如图所示。所有原因结点列 在左边,所有结果结点列在右边。建立中间结 点,表示处理的中间状态。中间结点: 11. 投入1元硬币且押下饮料按钮 12. 押下〖橙汁〗或〖啤酒〗的按钮 13. 应当找5角零钱并且售货机有零钱找 14. 钱已付清
因果图方法
3.因果图介绍 4种符号分别表示了规格说明中的4种因果关系。
因果图方法



因果图中使用了简单的逻辑符号,以直线联接左右结点。左结点 表示输入状态(或称原因),右结点表示输出状态(或称结果)。 Ci表示原因,通常置于图的左部;ei表示结果,通常在图的右部。 Ci和ei均可取值0或1,0表示某状态不出现,1表示某状态出现。 因果图中的概念 1) 关系 ① 恒等:若ci是1,则ei也是1;否则ei为0。 ② 非:若ci是1,则ei是0;否则ei是1。 ③ 或:若c1或c2或c3是1,则ei是1;否则ei为0。“或”可有任意 个输入。 ④ 与:若c1和c2都是1,则ei为1;否则ei为0。“与”也可有任意 个输入。
黑盒测试
因果图法
因果图方法
1.定义: 是一种利用图解法分析输入的各种组合情况,从而设计 测试用例的方法,它适合于检查程序输入条件的各种组合情 况。
2.因果图法产生的背景: 等价类划分法和边界值分析方法都是着重考虑输入条件, 但没有考虑输入条件的各种组合、输入条件之间的相互制约 关系。这样虽然各种输入条件可能出错的情况已经测试到了, 但多个输入条件组合起来可能出错的情况却被忽视了。 如果在测试时必须考虑输入条件的各种组合,则可能的 组合数目将是天文数字,因此必须考虑采用一种适合于描述 多种条件的组合、相应产生多个动作的形式来进行测试用例 的设计,这就需要利用因果图(逻辑模型)。

测试用例设计综合题作业

测试用例设计综合题作业

【黑盒技术】一、因果图方法的思路是:从用自然语言书写的程序规格说明描述中找出因(输入条件)和果(输出或程序状态的改变),通过因果图转换为判定表。

分析中国象棋中走马的实际情况(下面未注明的均指的是对马的说明),马走日字型(邻近交叉点无棋子),遇到对方棋子可以吃掉,遇到本方棋子不能落到该位置。

[问题1](3分)应用中可能有多种输入条件,在什么情况下可采用因果图法设计测试用例?[问题2]((4.5分)根据上述说明,利用因果图法,下面列出走棋出现的情况和结果,找出哪些是正确的输入条件,哪些是正确的输出结果,请把相应的字母编号填入表中。

A.落点在棋盘上;B.落点与起点构成日字;C.移动棋子;D.落点处为对方棋子;E.落点处为自己方棋子;F.移动棋子,并除去对方棋子;G.落点方向的邻近交叉点无棋子;H.不移动棋子;I.落点处无棋子。

[问题3](4.5分)下图画出中国象棋中走马的因果图,请把问题2中列出的输入条件和输出结果的字母编号填入到空白框中相应的位置。

输入条件输出条件二、场景法是黑盒测试中重要的测试用例设计方法。

目前多数软件系统都是用事件触发来控制业务流程,事件触发时的情景便形成了场景,场景的不同触发顺序构成用例。

场景法通过场景描述业务流程(包括基本流(基本流程)和备选流(分支流程)),设计用例遍历软件系统功能,验证其正确性。

图 1 描述了简化的中心层、省市层、地区层三级的“公文流转”业务流程,表1 描述了省市层(图 1 阴影部分)业务的基本流和备选流。

公文的状态包括:己下发、未下发、已接收、未接收。

【问题1】(5 分)用表 1 中表述的基本流和备选流,使用场景法设计测试场景。

基本流和备选流用表1中对应的字母编号表示。

【问题2】(10 分)下表给出了测试用例名称,请将表中的输入条件和预期输出补充完整。

三、场景法是黑盒测试中重要的测试用例设计方法。

目前多数软件系统都是用事件触发来控制业务流程,事件触发时的情景便形成了场景,场景的不同触发顺序构成用例。

7因果图法详解

7因果图法详解

找出因(输入条件)和果(输出结 果或者程序状态的改变), 然后通过因果图转换为判定表,最 后为判定表中的每一列设计一个 测试用例.
因果图法的定义:
是一种利用图解法分析输入的各
种组合情况,从而设计测试用例 的方法,它适合于检查程序输入 条件的各种组合情况。
因果图中出现的基本符号
原因
结果
通常在因果图中用Ci表示原因,用Ei 表示结果,各结点表示状态,可取值 “0”或“1”。“0”表示某状态不出 现,“1”表示某状态出现。
(b)
(c)

E约束(异):a和b中最多有一个可能 为1,即a和b不能同时为1;
a E

b

I约束(或):a、b、c中至少有一个必 须是1,即a、b、c不能同时为0;
a I 或 b c

O约束(唯一):a和b必须有一个且仅 有一个为1;
a O 唯一 b

R约束(要求):a是1时,b必须是1;
a R b 要求

M约束(强制):若结果a是1,则结果b 强制为0。
a M b 强制

对于输入条件的约束有4种:



E约束(异):a和b中最多有一个可能为1,即a和b不 能同时为1; I约束(或):a、b、c中至少有一个必须是1,即a、b c不能同时为0; O约束(唯一):a和b必须有一个且仅有一个为1; R约束(要求):a是1时,b必须是1;
因果图法举例

程序的规格说明要求:输入的第一个字符 必须是“#”或“*”,第二个字符必须是 一个数字,在此情况下进行文件的修改; 如果第一个字符不是“#”或“*”,则给 出信息N;如果第二个字符不是数字,则 给出信息M。
步骤:

测试用例设计技术之----因果图

测试用例设计技术之----因果图

测试用例设计技术之----因果图上次讲了因果图法的基本原理,这种方法是有因必有果,正是由于多个原因的不同组合,使得结果也不尽相同。

由于组合情况很多,才用因果图法能大大简化测试用例的数量。

我们来看一个例子:有一个饮料自动售货机(处理单价为5角钱)的控制处理软件,它的软件规格说明如下:若投入5角钱的硬币,按下“橙汁”或“啤酒”的按钮,则相应的饮料就送出来。

若投入1元钱的硬币,同样也是按“橙汁”或“啤酒”的按钮,则自动售货机在送出相应饮料的同时退回5角钱的硬币。

怎么分析这种具有一定实际意义的情况呢?按照因果图的说法,我们先分析一下,把原因与结果先找出来:原因是输入条件,在自动售货机里,硬币的投入、按钮的按下,都是输入,这样的话就有以下几个原因:(1)投入5角硬币(2)投入1元硬币(3)按下“橙汁”按钮(4)按下“啤酒”按钮结果有哪些呢?(1)送出“橙汁”饮料(2)送出“啤酒”饮料(3)找5角硬币按照因果关系,把因果图的雏形画出来:再加上因果图的约束关系,那么图形就成为以下:根据最终的因果图生成判定表:最后把测试用例写出来:用例编号用例说明输入数据预期结果SHJ-001 (1)投入硬币(2)按下按钮1元点击“橙汁”按钮退还5角硬币送出“橙汁”饮料SHJ-002 (1)投入硬币(2)按下按钮1元点击“啤酒”按钮退还5角硬币送出“啤酒”饮料SHJ-003 (1)投入硬币1元给出提示信息SHJ-004 (1)投入硬币(2)按下按钮5角点击“橙汁”按钮送出“橙汁”饮料SHJ-005 (1)投入硬币(2)按下按钮5角点击“啤酒”按钮送出“啤酒”饮料SHJ-006 (1)投入硬币5角给出提示信息SHJ-007 (1)按下按钮“橙汁”按钮给出提示信息SHJ-008 (1)按下按钮“啤酒”按钮给出提示信息。

测试用例设计_因果图和判定表教学内容

测试用例设计_因果图和判定表教学内容

测试用例设计方法 之
判定表
判定表
1、判定表: 判定表是分析和表达多逻辑条件下执行不同操作的情况的工具。 2、优点: 能够将复杂的问题按照各种可能的情况全部列举出来,简明并避免遗漏。因 此,利用判定表能够设计出完整的测试用例集合。 在一些数据处理问题当中,某些操作的实施依赖于多个逻辑条件的组合,即 :针对不同逻辑条件的组合值,分别执行不同的操作。判定表很适合于处理这类 问题。
因果图
采用因果图法设计测试用例的步骤: 1) 分析软件规格说明描述中, 那些是原因(即输入条件或输入条件的等价类), 那些是结果(即输出条件), 并给每个原因和结果赋予一个标识符。 2) 分析软件规格说明描述中的语义,找出原因与结果之间, 原因与原因之间 对应的关系,根据这些关系,画出因果图。 3) 由于语法或环境限制, 有些原因与原因之间,原因与结果之间的组合情况不 可能出现,为表明这些特殊情况, 在因果图上用一些记号表明约束或限制条件。 4) 把因果图转换为判定表。 5) 把判定表的每一列拿出来作为依据,设计测试用例。
判定表
4、规则及规则合并 规则:任何一个条件组合的特定取值及其相应要执行的操作称为规则。在判 定表中贯穿条件项和动作项的一列就是一条规则。显然,判定表中列出多少组条 件取值,也就有多少条规则,既条件项和动作项有多少列。 化简:就是规则合并有两条或多条规则具有相同的动作,并且其条件项之间 存在着极为相似的关系。
3、组成:
判定表
1) 条件桩(Condition Stub): 列出了问题得所有条件。通常 认为列出的条件的次序无关紧 要。 2) 动作桩(Action Stub): 列出了问题规定可能采取的操 作。这些操作的排列顺序没有 约束。 3) 条件项(Condition Entry):列出针对它左列条件 的取值。在所有可能情况下的 真假值。 4) 动作项(Action Entry): 列出在条件项的各种取值情况 下应该采取的动作。

因果图法(1)

因果图法(1)

案例分析1

有一个处理单价为1元5角的盒装饮料的 自动售货机软件。若投入1元5角硬币, 按下“可乐”,“雪碧”或“红茶”按钮, 相应的饮料就送出来。若投入的是两元硬 币,在送出饮料的同时退还5角硬币。
(1)分析原因及结果
原因
c1:投入1元5角硬币; c2:投入2元硬币; c3:按“可乐”按钮; c4:按“雪碧”按钮; c5:按“红茶”按钮; 11:已投币 12:已按钮
因果图法举例

程序的规格说明要求:输入的第一个字符 必须是“#”或“*”,第二个字符必须是 一个数字,在此情况下进行文件的修改; 如果第一个字符不是“#”或“*”,则给 出信息N;如果第二个字符不是数字,则 给出信息M。
步骤:
1. 2.
3. 4.
分析程序的规格说明,列出原因和结果; 找出原因与结果之间的因果关系、原因 与原因之间的约束关系,画出因果图。 将因果图转换成决策表; 根据3中的决策表,设计测试用例的输入 数据和预期输出。
a3
带有E约束的因果图
c1 E c2 V 10 ~ a2 V a1
c3
~
a3
具有E约束的因果图表示
将因果图转化为判定表
1 c1:第一个字符是“#” c2:第一个字符是“*” c3:第二个字符是一个数字 10:中间结果 a1:给出信息N a2:修改文件 a3:给出信息M 不可能 测试用例 1 1 1 2 3 1 1 1 0 0 1 1 √ √ √ √ # # * * C C 3 B 7 M 2 M 4 5 6 7 8 1 0 0 1 0 1 1 1 √ √ √ 0 1 0 1 0 0 1 0 0 0 0 0
c1 c1 (a)恒等 e1 c1 e1 c2 V e1 c1 V e1

测试用例设计方法之判定表和因果图

测试用例设计方法之判定表和因果图

测试⽤例设计⽅法之判定表和因果图⼀、判定表等价类边界值分析法主要关注单个或者多个输⼊类条件的测试,并未考虑到输⼊条件之间的各种组合,输⼊条件与输出结果之间有相互制约关系的测试1、概念: 存在多个输⼊条件、多个输出结果,输⼊和输⼊之间有组合关系,输⼊和输出之间有依赖或者制约关系2、判定表的组成: -条件桩:所有输⼊条件、如⽋费状态、关机状态 -动作桩:所有的可能的输出结果,如允许主被叫、不允许主被叫 -条件项:单个条件的取值范围,⼀般都是有效等价类和⽆效等价类 -表⽰⽅式 -字符: -真/有效等价类/Y -假/⽆效等价类/N -数字 -真/有效等价类/Y -假/⽆效等价类/N -动作项:基于每⼀种条件的组合,得到确认的结果,如打不通、打得通3、设计测试⽤例的步骤: 1、明确条件桩(找到所有的属兔条件) 2、明确动作桩(找到所有的输出结果) 3、对条件桩进⾏组合 4、明确每个组合对应的动作桩(每个输⼊条件组合的情况下的输出结果) 5、设计测试⽤例,每⼀⾏对应⼀条测试⽤例4、判定表的应⽤场景: -多输⼊组合场景,即输⼊与输⼊之间有组合案例⼀、若⽤户⽋费或者关机则不允许主被叫; 步骤:1、找到所有的输⼊条件 2、找到输⼊条件的组合 3、找到组合对应的输出结果案例⼆、订单状态订单检查,如果⾦额⼤于500元,⼜未过期,则发出批准单和提货单;如果⾦额⼤于500元,但过期了,则不发批准单与提货单;如果⾦额⼩于500元,则不论是否过期都发出批准单和提货单;在过期的情况下,不论⾦额⼤⼩还需要发出通知单。

案例三、⽂件修改如果想对⽂件进⾏修改,输⼊的第⼀列字符必须是A/B,第⼆列字符必须是⼀个数字,如果第⼀列字符不正确,则给出信息L;如果第⼆列字符不正确,则给出信息M。

⼆、因果图(扩展) ------------------ ⼀般直接⽤判定表 因果图设计⽅法是对判定表的扩展 -概念:⽤图解的⽅法表⽰输⼊的各组合关系,写出判定表,进⽽设计测试⽤例的⼀种⽅法 -适⽤范围:适⽤于分析程序输⼊条件的各种组合情况,以及输⼊和输出之间的依赖关系 -核⼼: -因:即输⼊条件 -果:即输出结果 -基本符号(重点掌握) -恒等:条件成⽴,结果成⽴ -⾮(~)NOT: 条件成⽴,结果不成⽴,条件不成⽴,结果成⽴ -或(V)OR:只要有⼀个条件成⽴,结果就成⽴;所有条件都不成⽴时,结果才不成⽴ -与 ^ and:多个条件必须同时成⽴,结果成⽴;只要有⼀个条件不成⽴,结果就不成⽴。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1、根据需求规格绘制因果图
根据因果图推导出判定表。

3、4、5和3、6、7之间的R约束表示只要后面的操作是成功的,则前面的操作也一定是成功的。

所以3、4、5、6、7节点的取1、当3为假时,4、5、6、7一定为假,不可能存在其他的取值。

为了提高测试效率,可以对上面的判定表进行合并处理,合并的规则如下:
支付宝个人认证中,分为两部分:个人身份认证和银行卡认证。

这两者都通过后,则认为个人身份认证需要提交个人基本信息及身份证复印件。

银行卡认证需完成提现认证和充值认证。

提现认证的流程是:用户提交正确的银行帐号——>支付宝给用户的银行卡中随机打款——>用户确认金证成功。

充值认证的流程是:用户提交正确的银行帐号——>充值——>充值完成——>网银反馈,认证成功。

为了简便起见,我们假设个人信息提交和身份证件提交成功后,身份认证则成功,忽略人工审核过程。

1、当条件1、2为10、01、00组合时,无论3、4、5、6、7取什么值(但要遵守指定的R约束),其结果都是认证失败,这里
2、当条件
3、
4、
5、
6、7中至少有一个为0时,则无论1、2取什么值,其结果都是认证失败,这里只需要9个用例
实际工作中建议先使用第一种设计方法,然后从可以合并的用例中挑选一个作为H级别用例,其它则作为L级别用例,这样测合并还是不合并,怎么合并,这都需要测试人员在实际工作中根据需求复杂度和项目进度来决定。

功的。

所以3、4、5、6、7节点的取值有如下规律:
则认为认证成功。

中随机打款——>用户确认金额,认—>网银反馈,认证成功。

成功,忽略人工审核过程。

束),其结果都是认证失败,这里只需要3个用例就好。

败,这里只需要9个用例
例,其它则作为L级别用例,这样测试时间紧张时只测试H级别用例,测试时间充裕时则把L级别用例也测试一下。

会增加漏测风险。

相关文档
最新文档