




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第7章 基于决策表的测试决策表 基于决策表的测试 案例:三角形问题,NextDate问题 练习:隔一日问题第7章 基于决策表的测试决策表 7.1 决策表决策表的原理 决策表的组成 决策表建立的步骤 7.1 决策表决策表的原理 1. 决策表的原理决策表 决策表:Decision Table决策表是分析和表达多逻辑条件下执行不同操作的工具。 在程序设计发展的初期,决策表被当作编写程序的辅助工具。1. 决策表的原理决策表 2. 决策表的组成条件桩(Condition Stub) 列出问题的所有条件 动作桩(Action Stub) 列出可能采取的操作 条件项(Condition Entity) 列出
2、条件桩的取值 动作项(Action Entity) 列出条件项各种取值下应该采取的动作2. 决策表的组成条件桩(Condition Stub) 决策表的组成决策表的组成规则任何一个条件组合的特定取值及其相应要执行的操作称为规则; 在决策表中贯穿条件项和动作项的一列就是一条规则; 决策表中列出多少组条件取值,也就有多少条规则,即条件项和动作项有多少列。规则任何一个条件组合的特定取值及其相应要执行的操作称为规则;规则示例:三角形问题规则示例:三角形问题规则(续)规则合并 规则合并就是决策表的简化。 有两条或多条规则具有相同的动作,并且其条件项之间存在着极为相似的关系,就可以将规则合并。规则(续)规
3、则合并 (1)两条规则合并成一条条件项“”表示与取值无关。(1)两条规则合并成一条条件项“”表示与取值无关。条件项“”在逻辑上包含其它的条件。(2)两条规则的进一步合并条件项“”在逻辑上包含其它的条件。(2)两条规则的进一步合3. 决策表建立步骤根据软件规格说明 列出所有的条件桩和动作桩; 确定规则的个数; 假如有n个条件,每个条件有两个取值(0,1),则有2n 种规则; 填入条件项; 填入动作项,得到初始决策表; 简化,合并相似规则(相同动作)。3. 决策表建立步骤根据软件规格说明 例:维修机器问题问题描述: “对于功率大于50马力的机器并且维修记录不全,或已运行10年以上的机器,应给予优先
4、的维修处理” 请建立决策表。例:维修机器问题问题描述: 例:维修机器问题(续)(1)列出所有的条件桩和动作桩 条件桩 C1:功率大于50马力吗? C2:维修记录不全吗? C3:运行超过10年吗? 动作桩 A1:进行优先处理 A2:作其他处理 例:维修机器问题(续)(1)列出所有的条件桩和动作桩 例:维修机器问题(续)(2)确定规则个数 输入条件个数:3; 每个条件的取值:“是”或“否”; 规则个数:2*2*2 =8; 功率大于50马力吗 维修记录不全吗 运行超过10年吗 例:维修机器问题(续)(2)确定规则个数 功率大于50马力例:维修机器问题(续)12345678条 件功率大于50马力吗?
5、YYYYNNNN维修记录不全吗? YYNNYYNN运行超过10年吗? YNYNYNYN动 作进行优先处理 作其他处理 (3)填入条件项;利用集合的笛卡尔积计算条件项的取值例:维修机器问题(续)12345678条 功率大于50马力吗例:维修机器问题(续)12345678条 件功率大于50马力吗? YYYYNNNN维修记录不全吗? YYNNYYNN运行超过10年吗? YNYNYNYN动 作进行优先处理 作其他处理 (4)填入动作项;1,2合并,5,7合并,6,8合并例:维修机器问题(续)12345678条 功率大于50马力吗例:维修机器问题(续)(5)化简;(1)(2)(3)(4)(5)条 件功率
6、大于50马力吗? YYYNN维修记录不全吗? YNN 运行超过10年吗? YNYN动 作进行优先处理 作其他处理 例:维修机器问题(续)(5)化简;(1)(2)(3)(4)(基于决策表的测试根据输入输出绘制决策表; 设计测试用例覆盖决策表中每条规则;基于决策表的测试根据输入输出绘制决策表; 7.2 案例:三角形问题问题描述 输入三个正整数a、b、c,分别作为三角形的三条边,通过程序判断三条边是否能构成三角形?如果能构成三角形,判断三角形的类型(等边三角形、等腰三角形、一般三角形)。 请用基于决策表的方法设计测试用例。 7.2 案例:三角形问题问题描述 (1)条件桩 C1:a,b,c构成三角形?
7、 C2:a = b? C3:a = c? C4:b = c? (2)规则数 共有四个条件,每个条件的取值为“是”或“否”,因此有24= 16条规则。 一、设计决策表(1)条件桩 一、设计决策表(3)动作桩 A1:非三角形; A2:不等边三角形; A3:等腰三角形; A4:等边三角形; A5:不可能;(3)动作桩 (4)决策表123456789条 件a, b, c构成三角形NYYYYYYYYa = b? YYYYNNNNa = c? YYNNYYNNb = c? YNYNYNYN动 作非三角形 不等边三角形 等腰三角形 等边三角形 不可能 (4)决策表123456789条 a, b, c构成三角
8、形N注意: 条件的选择可以大大扩展决策表的规模; 例如 a, b, c构成三角形吗?可以扩展为三个条件: a b + c? b a + c? c a + b? 注意: 条件桩修改后的决策表条件桩修改后的决策表a=b, a=c, bc二、设计测试用例a=b, 二、设计测试用例7.3 案例: NextDate函数问题描述 程序有三个输入变量month、day、year,并且满足:1month12、1day31、1900 year 2050。它们分别作为输入日期的月份、日、年份,通过程序可以输出该输入日期在日历上下一天的日期。例如,输入为2005年11月29日,则该程序的输出为2005年11月30日
9、。 7.3 案例: NextDate函数问题描述 第一次尝试M1=月份:每月有30天 M2=月份:每月有31天 M3=月份:此月是2月 D1=日期:1日期28 D2=日期:日期=29 D3=日期:日期=30 D4=日期:日期=31 Y1=年:年是闰年 Y2=年:年是平年第一次尝试M1=月份:每月有30天 有256条规则的第一次尝试年变量对应的等价类收缩为表中的一个条件有256条规则的第一次尝试年变量对应的等价类收缩为表中的一个第二次尝试(重点考虑闰年)M1=月份:每月有30天 M2=月份:每月有31天 M3=月份:此月是2月 D1=日期:1日期28 D2=日期:日期=29 D3=日期:日期=3
10、0 D4=日期:日期=31 Y1=年:年=2000 Y2=年:年是平年 Y3=年:年是闰年第二次尝试(重点考虑闰年)M1=月份:每月有30天 第三次尝试(关注日期和月份)M1=月份:每月有30天 M2=月份:每月有31天,12月除外 M3=月份:此月是12月 M4=月份:此月是2月 D1=日期:1日期 27 D2=日期:日期=28 D3=日期:日期=29 D4=日期:日期=30 D5=日期:日期=31 Y1=年:年是闰年 Y2=年:年不是闰年第三次尝试(关注日期和月份)M1=月份:每月有30天 NextDate函数的决策表每月30天每月31天,12月除外NextDate函数的决策表每月30天每
11、月31天,12月除外续 此月是12月此月是2月此年是闰年续 此月是12月此月是2月此年是闰年NextDate函数的精简决策表NextDate函数的精简决策表续 续 NextDate函数的测试用例NextDate函数的测试用例指导方针和观察决策表技术适用的应用程序的特征: if-then-else逻辑很突出 输入变量之间存在逻辑关系 涉及输入变量子集的计算 输入与输出之间存在因果关系 很高的McCabe圈复杂度 指导方针和观察决策表技术适用的应用程序的特征: 决策表的优点 能把复杂的问题按各种可能的情况一一列举出来 简明而易于理解 可避免遗漏 决策表的优点 决策表的缺点 不能表达重复执行的动作,例如循环结构 决策表不能很好地伸缩 有n个条件的决策表有2n
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 二零二五年度养老服务就业人员协议合同
- 二零二五年度新能源储能技术研发全新签约协议模板
- 二零二五年度小额贷款信用评估协议
- 二零二五年度临时工工作交接及保密条款合同
- 二零二五年度旅游地产出售地皮协议
- 2025年度方协议不解约就业权益保障实施协议
- 二零二五年度医院营养师临时雇佣劳动合同
- 二零二五年度酒吧艺人经纪代理合同
- 2025年度荒山租赁承包开发合同
- 生物医学工程科岗位职责与创新
- 2025年度事业单位招聘考试公共基础知识模拟试卷及答案(共四套)
- 2024年海东市第二人民医院自主招聘专业技术人员笔试真题
- 专题07 综合性学习【知识精研】中考语文二轮复习
- 2025年江西陶瓷工艺美术职业技术学院单招职业技能测试题库1套
- 《计算机基础与应用(Office 和 WPS Office )》课件 项目二 计算机操作系统配置与应用
- 2025年湖南电气职业技术学院单招职业技能测试题库及参考答案
- 混凝土拌合站拌合运输工程合同
- 机床操作与数控编程作业指导书
- 2025云南昆明空港投资开发集团招聘7人高频重点模拟试卷提升(共500题附带答案详解)
- 2025云南昆明空港投资开发集团招聘7人高频重点提升(共500题)附带答案详解
- 2024年广西壮族自治区中考化学试题含答案
评论
0/150
提交评论