关闭

关闭

关闭

封号提示

内容

首页 黑盒测试_决策表因果图第二讲.ppt

黑盒测试_决策表因果图第二讲.ppt

黑盒测试_决策表因果图第二讲.ppt

艾尔小茜茜 2018-05-06 评分 0 浏览量 0 0 0 0 暂无简介 简介 举报

简介:本文档为《黑盒测试_决策表因果图第二讲ppt》,可适用于自然科学领域,主题内容包含牛倩软件测试第四章黑盒测试黑盒测试概念等价类测试边界值分析法决策表因果图错误推测法上节课讲了什么?黑盒测试:根据功能需求来测试程序是否按照预期工作。符等。

牛倩软件测试第四章黑盒测试黑盒测试概念等价类测试边界值分析法决策表因果图错误推测法上节课讲了什么?黑盒测试:根据功能需求来测试程序是否按照预期工作。等价类划分:等价类是输入域的某个子集合而所有的等价类的并集是整个输入域。在子集合中各个输入数据对于揭露程序中的错误是等效的。边界值分析:边界值分析关注输入空间的边界并从中标识测试用例。最坏情况测试最坏情况测试的基本思想边界值测试分析采用了可靠性理论的单缺陷假设最坏情况测试拒绝这种假设关心当多个变量取极值时会出现什么情况?最坏情况测试用例设计方法对每一个变量首先进行包含最小值、略高于最小值、正常值、略低于最大值、最大值五个元素集合的测试然后对这些集合进行笛卡尔积计算以生成测试用例。一个变量个数为n的函数的最坏情况测试会产生n个测试用例。两变量函数的最坏情况测试用例最坏情况与边界值分析的比较基本边界值分析测试用例是最坏情况测试用例的真子集。最坏情况测试显然更彻底最坏情况测试工作量大得多n变量函数的最坏情况测试会产生的n次方个测试用例边界值分析只产生n个测试用例两变量函数的健壮最坏情况测试用例【例】加法器程序计算两个~之间整数的和。对于加法器程序根据输入要求可将输入空间划分为三个等价类即个有效等价类(~之间)两个无效等价类()。但这种等价类划分不是很完善我们只考虑了输入数据的取值范围而没有考虑输入数据的类型我们认为输入应为整数但用户输入什么都有可能。加法器边界值测试用例设计边界值分析法的测试运用为此我们可综合考虑输入数据的取值范围和类型划分等价类其结果如下表所示。加法器等价类编号输入条件所属类别编号输入条件所属类别~之间整数有效等价类非数值(字母)无效等价类整数无效等价类非数值(特殊字符)无效等价类整数无效等价类非数值(空格)无效等价类小数无效等价类非数值(空白)无效等价类加法器边界测试用例测试用例输入数据预期输出加数加数和TestTestTestTestTestTestTestTestTest提示ldquo请输入~间的整数rdquoTest提示ldquo请输入~间的整数rdquoTest提示ldquo请输入~间的整数rdquoTest提示ldquo请输入~间的整数rdquoTest提示ldquo请输入~间的整数rdquo加法器边界测试用例测试用例输入数据预期输出加数加数和Test提示ldquo请输入~间的整数rdquoTestA提示ldquo请输入~间的整数rdquoTestA提示ldquo请输入~间的整数rdquoTest提示ldquo请输入~间的整数rdquoTest提示ldquo请输入~间的整数rdquoTest空格提示ldquo请输入~间的整数rdquoTest空格提示ldquo请输入~间的整数rdquoTest提示ldquo请输入~间的整数rdquoTest提示ldquo请输入~间的整数rdquo如果输入条件对取值范围进行了限定则应以边界内部以及刚超出范围边界外的值作为测试用例。如果对取值的个数进行了界定则应分别以最大、稍小于最大、稍大于最大、最小、稍小于最小、稍大于最小个数作为测试用例。对于输出条件同样可以应用上面提到的两条原则来进行测试用例设计。如果程序规格说明书中指明输入或者输出域是一个有序的集合如顺序文件、表格等则应注意选取有序集合中的第一个和最后一个元素作为测试用例。边界值分析法设计测试用例的原则:练习:NextDate函数输入条件le月份lele日期lele年le请用边界值分析设计测试用例决策表决策表是分析和表达多逻辑条件下执行不同操作的工具。决策表能够将特别复杂的问题按照各种可能的情况一一列举出来可简明扼要并且很好的避免遗漏。决策表的组成条件桩列出问题的所有条件动作桩列出可能采取的操作条件项列出条件桩的取值动作项列出条件项各种取值下应该采取的动作其中:动作项和条件项紧密相关指出在条件项的各组取值情况下应采取的动作。规则任何一个条件组合的特定取值及其相应要执行的操作称为规则在决策表中贯穿条件项和动作项的一列就是一条规则决策表中列出多少组条件取值也就有多少条规则即条件项和动作项有多少列。规则示例:三角形问题规则规则合并mdashmdash决策表的简化规则合并就是决策表的简化。有两条或多条规则具有相同的动作并且其条件项之间存在着极为相似的关系就可以将规则合并。()两条规则合并成一条条件项ldquomdashrdquo表示与取值无关。()两条规则的进一步合并条件项ldquomdashrdquo在逻辑上包含其它的条件。决策表建立步骤根据软件规格说明列出所有的条件桩和动作桩确定规则的个数假如有n个条件每个条件有两个取值(,),则有n种规则填入条件项填入动作项得到初始决策表简化合并相似规则(相同动作)。例:维修机器问题问题描述:ldquohelliphellip对于功率大于马力的机器并且维修记录不全或已运行年以上的机器应给予优先的维修处理helliphelliprdquo请建立决策表。例:维修机器问题()列出所有的条件桩和动作桩条件桩C:功率大于马力吗?C:维修记录不全吗?C:运行超过年吗?动作桩A:进行优先处理A:作其他处理例:维修机器问题()确定规则个数输入条件个数:每个条件的取值:ldquo是rdquo或ldquo否rdquo规则个数:**=功率大于马力吗维修记录不全吗运行超过年吗例:维修机器问题()填入条件项条件功率大于马力YYYYNNNN维修记录不全YYNNYYNN运行超过年吗YNYNYNYN动作进行优先处理作其他处理利用集合的笛卡尔积计算条件项的取值例:维修机器问题()填入动作项条件功率大于马力吗?YYYYNNNN维修记录不全吗?YYNNYYNN运行超过年吗?YNYNYNYN动作进行优先处理作其他处理合并合并合并例:维修机器问题()化简()()()()()条件功率大于马力吗?YYYNN维修记录不全吗?YNNmdashmdash运行超过年吗?mdashYNYN动作进行优先处理作其他处理例:三角形问题问题描述输入三个正整数a、b、c分别作为三角形的三条边通过程序判断三条边是否能构成三角形?如果能构成三角形判断三角形的类型(等边三角形、等腰三角形、一般三角形)。请用基于决策表的方法设计测试用例。例:三角形问题一、设计决策表()条件桩C:a,b,c构成三角形?C:a=bC:a=c?C:b=c?()规则数共有四个条件每个条件的取值为ldquo是rdquo或ldquo否rdquo因此有=条规则。例:三角形问题()动作桩A:非三角形A:不等边三角形A:等腰三角形A:等边三角形A:不可能例:三角形问题()决策表条件a,b,c构成三角形NYYYYYYYYa=bmdashYYYYNNNNa=c?mdashYYNNYYNNb=c?mdashYNYNYNYN动作非三角形不等边三角形等腰三角形等边三角形不可能例:三角形问题注意:条件的选择可以大大扩展决策表的规模例如a,b,c构成三角形吗?可以扩展为三个条件:abcbaccab条件桩修改后的决策表根据决策表设计测试用例设计测试用例例:NextDate函数问题描述程序有三个输入变量month、day、year并且满足:lemonthle、ledayle、leyearle。它们分别作为输入日期的月份、日、年份通过程序可以输出该输入日期在日历上下一天的日期。例如输入为年月日则该程序的输出为年月日。例:NextDate函数第一次尝试M={月份:每月有天}M={月份:每月有天}M={月份:此月是月}D={日期:le日期le}D={日期:日期=}D={日期:日期=}D={日期:日期=}Y={年:年是闰年}Y={年:年是平年}有条规则的第一次尝试年变量对应的等价类收缩为表中的一个条件第二次尝试(重点考虑闰年)M={月份:每月有天}M={月份:每月有天}M={月份:此月是月}D={日期:le日期le}D={日期:日期=}D={日期:日期=}D={日期:日期=}Y={年:年是平年}Y={年:年是闰年}第三次尝试(关注日期和月份)M={月份:每月有天}M={月份:每月有天月除外}M={月份:此月是月}M={月份:此月是月}D={日期:le日期le}D={日期:日期=}D={日期:日期=}D={日期:日期=}D={日期:日期=}Y={年:年是闰年}Y={年:年不是闰年}NextDate函数的决策表每月天每月天,月除外此月是月此月是月此年是闰年NextDate函数的精简决策表案例:NextDate函数NextDate函数的测试用例因果图因果图分析法因果图介绍利用因果图导出测试用例举例因果图因果图法是一种利用图解法分析输入的各种组合情况从而设计测试用例的方法它适合于检查程序输入条件的各种组合情况。基本概念原因:输入状态用ci表示结果:输出状态用ei表示ci与ei取值或:表示某状态不出现则表示出现因果图因果图法因果图中的四种基本关系恒等、非、或、与输入条件的四种约束(依赖关系)E约束、I约束、O约束、R约束输出条件的约束M约束因果图法因果图中的四种基本关系恒等:若c是则e也为否则为非:若c是则e为否则为ce因果图法因果图中的四种基本关系或:若c或c或c是则e也为否则为与:若c和c都是则e为否则为因果图法输入条件的四种约束(依赖关系)因果图法输入条件的四种约束(依赖关系)输出条件约束:利用因果图设计测试用例确定软件规格中的原因和结果并给每个原因和结果赋予一个标示符。确定原因和结果之间的逻辑关系画出因果图。包括原因和结果之间的关系和原因和原因之间的关系确定因果图中的各个约束。把因果图转换成判定表根据决策表设计测试用例举例:软件规格说明书第一列字符必须是A或B第二列字符必须是一个数字在此情况下进行文件的修改。但如果第一列字符不正确则给出信息L如果第二列字符不是数字则给出信息M、确定软件规格中的原因和结果原因第一列字符是A第一列字符是B第二列字符是一数字结果修改文件给出信息L给出信息M、确定原因和结果之间的逻辑关系原因第一列字符是A第一列字符是B第二列字符是一数字结果修改文件给出信息L给出信息M、确定因果图中的各个约束考虑到原因和原因不可能同时为因此在因果图上施加E约束例:自动售货机问题有一个处理单价为角钱的饮料的自动售货机软件。其规格说明如下:若投入角钱或元钱硬币按下ldquo橙汁rdquo或ldquo啤酒rdquo的按钮则相应的饮料就送出来。若售货机没有零钱找则显示ldquo零钱不足rdquo的红灯亮这时再投入元硬币并按下按钮后饮料不送出来而且一元硬币也退出来若有零钱找则显示ldquo零钱不足rdquo的红灯灭在送出饮料的同时退角硬币。

用户评论(0)

0/200

精彩专题

上传我的资料

每篇奖励 +1积分

关闭

新课改视野下建构高中语文教学实验成果报告(32KB)

抱歉,积分不足下载失败,请稍后再试!

提示

试读已结束,如需要继续阅读或者下载,敬请购买!

资料评分:

/58
¥5.0 购买

意见
反馈

立即扫码关注

爱问共享资料微信公众号

返回
顶部

举报
资料