某科技大学软件测试技术

上传人:无*** 文档编号:253119914 上传时间:2024-11-29 格式:PPT 页数:45 大小:366.50KB
返回 下载 相关 举报
某科技大学软件测试技术_第1页
第1页 / 共45页
某科技大学软件测试技术_第2页
第2页 / 共45页
某科技大学软件测试技术_第3页
第3页 / 共45页
点击查看更多>>
资源描述
Click to edit Master title style,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,Software Testing,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,软件测试技术,问题引入,例:,某个软件需求文档中有这样的说明:第一列字符必须是,A,或,B,,第二列字符必须是一个数字,在此情况下进行文件的修改。但如果第一列字符不正确,则给出信息,L,;如果第二列字符不是数字,则给出信息,M,。,边界值测试,等价类测试,4.3,基于判定表的测试,判定表,基于判定表的测试,案例:三角形问题,,NextDate,问题,练习:隔一日问题,4.3.1,判定表,判定表的原理,判定表的组成,判定,表建立的步骤,1.,判定表的原理,判定表,判定表(,Decision Table,),又叫决策表,判定表是分析和表达多逻辑条件下执行不同操作的工具。,在程序设计发展的初期,判定表被当作编写程序的辅助工具。,2.,判定表的组成,条件桩(,Condition Stub,),列出问题的所有条件,动作桩(,Action Stub,),列出可能采取的操作,条件项(,Condition Entity,),列出条件桩的取值,动作项(,Action Entity,),列出条件项各种取值下应该采取的动作,判定表的组成,规则,任何一个条件组合的特定取值及其相应要执行的操作称为规则;,在判定表中贯穿,条件项和动作项,的一列就是一条规则;,判定表中列出多少组条件取值,也就有多少条规则,即条件项和动作项有多少列。,规则示例:三角形问题,规则(,续,),规则合并,规则合并就是判定表的,简化,。,有两条或多条规则具有,相同的动作,,并且其条件项之间存在着极为,相似的关系,,就可以将规则合并。,(,1,)两条规则合并成一条,条件项“,”,表示与取值无关。,条件项“,”,在逻辑上包含其它的条件。,(,2,)两条规则的进一步合并,3.,判定表建立步骤,根据软件规格说明,列出所有的条件桩和动作桩;,确定规则的个数;,假如有,n,个条件,每个条件有两个取值(,0,1,),则有,2,n,种规则;,填入条件项;,填入动作项,得到初始决策表;,简化,合并相似规则(相同动作)。,例:,维修机器问题,问题描述:,“,对于功率大于,50,马力的机器,并且维修记录不全或已运行,10,年以上的机器,应给予优先的维修处理,”,请建立决策表。,例:,维修机器问题(续),(,1,)列出所有的条件桩和动作桩,条件桩,C1,:功率大于,50,马力吗?,C2,:维修记录不全吗?,C3,:运行超过,10,年吗?,动作桩,A1,:进行优先处理,A2,:作其他处理,例:,维修机器问题(续),(,2,)确定规则个数,输入条件个数:,3,;,每个条件的取值:,“,是,”,或,“,否,”,;,规则个数,:,2*2*2=8,;,功率大于,50,马力吗,维修记录不全吗,运行超过,10,年吗,例:,维修机器问题(续),(,3,)填入条件项;,利用集合的笛卡尔积计算条件项的取值,例:,维修机器问题(续),(,4,)填入动作项;,1,,,2,合并,,5,,,7,合并,,6,,,8,合并,例:,维修机器问题(续),(,5,)化简;,4.3.2,基于判定表的测试,根据输入输出绘制判定表;,设计测试用例覆盖判定表中每条规则;,4.3.3,案例:三角形问题,问题描述,输入三个正整数,a,、,b,、,c,,分别作为三角形的三条边,通过程序判断三条边是否能构成三角形?如果能构成三角形,判断三角形的类型(等边三角形、等腰三角形、一般三角形)。,请用基于判定表的方法设计测试用例。,(,1,)条件桩,C1,:,a,b,c,构成三角形?,C2,:,a=b?,C3,:,a=c,?,C4,:,b=c,?,(,2,)规则数,共有四个条件,每个条件的取值为“是”或“否”,因此有,2,4,=16,条规则。,一、设计判定表,(,3,)动作桩,A1,:非三角形;,A2,:不等边三角形;,A3,:等腰三角形;,A4,:等边三角形;,A5,:不可能;,(,4,)判定表,注意:,条件的选择可以大大扩展判定表的规模;,例如,a,b,c,构成三角形吗?可以扩展为三个条件:,a b+c?,b a+c?,c a+b?,条件桩修改后的判定表,a=b,a=c,bc,二、设计测试用例,课堂练习,隔一天的日期,程序有三个输入变量,month,、,day,、,year,,分别作为输入日期的月份、日、年份,通过程序可以输出该输入日期在日历上隔一天的日期。例如,输入为,2004,年,11,月,29,日,则该程序的输出为,2000,年,12,月,1,日。,课后练习,登陆功能说明书:(用户输入和密码输入),1,)管理员用户名为“,admin”,密码为“,123456”,,正常登陆,2,)用户名和密码输入为空,提示“用户和密码不允许为空”,在用户名和密码非空的情况下:,3,)要求用户名必须输入字母,否则提示“输入非法”,4,)要求密码必须输入数字,否则提示“输入非法”,在输入合法的情况下:,5,)用户名错误,提示“用户名和密码输入错误”,用户名和密码清空,6,)用户名正确,密码错误,提示“用户名和密码输入错误”,用户名保留,密码清空,4.3.4,案例:,NextDate,函数,问题描述,程序有三个输入变量,month,、,day,、,year,,并且满足:,1month12,、,1day31,、,1900 year 2050,。它们分别作为输入日期的月份、日、年份,通过程序可以输出该输入日期在日历上下一天的日期。例如,输入为,2005,年,11,月,29,日,则该程序的输出为,2005,年,11,月,30,日。,第一次尝试,M1=,月份:每月有,30,天,M2=,月份:每月有,31,天,M3=,月份:此月是,2,月,D1=,日期:,1,日期,28,D2=,日期:日期,=29,D3=,日期:日期,=30,D4=,日期:日期,=31,Y1=,年:年是闰年,Y2=,年:年是平年,有,256,条规则的第一次尝试,年变量对应的等价类收缩为表中的一个条件,第二次尝试(重点考虑闰年),M1=,月份:每月有,30,天,M2=,月份:每月有,31,天,M3=,月份:此月是,2,月,D1=,日期:,1,日期,28,D2=,日期:日期,=29,D3=,日期:日期,=30,D4=,日期:日期,=31,Y1=,年:年是平年,Y2=,年:年是闰年,第三次尝试(关注日期和月份),M1=,月份:每月有,30,天,M2=,月份:每月有,31,天,,12,月除外,M3=,月份:此月是,12,月,M4=,月份:此月是,2,月,D1=,日期:,1,日期,27,D2=,日期:日期,=28,D3=,日期:日期,=29,D4=,日期:日期,=30,D5=,日期:日期,=31,Y1=,年:年是闰年,Y2=,年:年不是闰年,NextDate,函数的判定表,每月,30,天,每月,31,天,12,月除外,续,此月是,12,月,此月是,2,月,此年是闰年,NextDate,函数的精简判定表,续,NextDate,函数的测试用例,指导方针和观察,判定表技术适用的应用程序的特征:,if-then-else,逻辑很突出,输入变量之间存在逻辑关系,涉及输入变量子集的计算,输入与输出之间存在因果关系,很高的,McCabe,圈复杂度,判定表的优点,能把复杂的问题按各种可能的情况一一列举出来,简明而易于理解,可避免遗漏,判定表的缺点,不能表达重复执行的动作,例如循环结构,判定表不能很好地伸缩,有,n,个条件的决策表有,2,n,个规则。,解决方法,使用扩展条目判定表、代数简化表,将大表“分解”为小表,查找条件项的判定表式,小 结,判定表(决策表)测试的原理,三角形问题的测试用例,NextDate,函数测试用例,判定表测试的讨论,作业:,教材,87,页:,9,题,、,10,题,、,11,题,问题与讨论,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!