版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
软件质量保证与测试3.5
判定表驱动法第3章黑盒测试SoftwareQualityAssuranceandTesting什么是判定表
判定表(DecisionTable)也叫决策表,是一种逻辑分析和表达工具,用于分析和表达多个输入条件,在不同的取值组合下,会分别执行哪些不同的操作。
例如,有一个“阅读指南”,它会对读者提三个问题,读者对每一个问题只需要简单的回答是或否,“阅读指南”会根据读者的回答,给出阅读建议。三个问题,每个问题有两种答案,那么不同的答案组合共有2*2*2=8个,为分析和表达这8种条件组合情况和相应的阅读建议,可以采用如下的表格:判定表
在程序设计发展的初期,判定表就已被当作编写程序的辅助工具了。判定表可以把多个条件的组合情况以及复杂的逻辑关系表达得既条理清楚又具体明确,能将复杂的问题按照各种可能的情况进行分解并全部列举出来,然后给出应当执行的操作,做到既简洁明了又避免遗漏。在程序规格中,若不同操作的实施依赖于多个逻辑条件的不同组合,那么就可以考虑使用判定表来进行分析和表达。判定表一个判定表由四部分组成,分别是:条件桩:列出问题的所有条件,通常认为条件的次序无关紧要动作桩:列出所有可能的操作,通常这些操作的排列顺序没有约束条件项:列出各个条件的具体取值动作项:列出在各个条件的具体取值下,应该采取的具体的动作条件桩动作桩条件项动作项判定表
判定表中的每一列称为一条规则。也就是说,一个特定的条件取值组合及其相应要执行的动作称为一条规则。一条规则包含具体的条件项和动作项,定义了动作在什么条件下发生。显然,判定表中列出了多少组不同的条件取值组合,就会有多少条规则。从处理逻辑上说,判定表可以把复杂的程序处理逻辑分解为多条处理规则,以便于我们对程序进行分析和理解。条件桩条件项动作桩动作项规则判定表判定表
对一个判定表的要求
互斥性:各个列互斥,一种输入情况只属于某一列,不能属于多个列。据此设计的测试用例,不会出现重复或者说冗余。完备性:任何一种输入情况一定属于某一列。据此设计的测试用例,是完备的。有限项判定表和扩展项判定表
根据条件取值的个数,判定表又可以分为有限项判定表和扩展项判定表。有限项判定表:每个条件只有两个取值,如Y/N,T/F,1/0。扩展项判定表:条件项的取值大于2个,可以是很多个。
判定表的建立步骤2、列出所有的条件桩和动作桩;3、填入条件的不同取值组合;4、填入具体动作,得到初始判定表;5、化简,合并一些具有相同动作的相似规则。判定表的建立步骤化简就是将规则合并。如果有两条或多条规则具有相同的动作,并且它们的条件项很相似,则可以考虑看能不能把这些规则合并为1条规则,从而使得判定表得到简化。
有一种化简较为常见,我们来看一个例子。判定表的化简
某有限项判定表有三个条件,有两条规则前两个条件取值相同,只有一个条件取值不同,但不管这个条件取什么值动作都一样,这说明这个条件在另外两个条件取当前值的前提下对结果不产生影响,此时可以把这两条规则合并成1条规则,无关的条件其取值可用横线填充。判定表的化简
得到判定表,对我们的软件测试有什么用呢?实际上,判定表中每一条规则就是程序的一种处理逻辑,我们为每一条规则设计一个测试用例,来对程序进行测试,就相当于测试了程序的各种处理逻辑。为每一条规则设计测试用例时,条件项构成了测试用例的输入,相应的动作项则是预期的输出结果。判定表驱动法判定表驱动法输入条件输出结果测试输入预期结果测试用例条件桩动作桩条件项动作项
我们来看一个判定表驱动法实例。程序规格要求如下:“……对功率大于50马力并且维修记录不全,或者已运行10年以上的机器,应给予优先的维修处理……”,假定,“维修记录不全”和“优先维修处理”均已在别处有更严格的定义。下面按照5个步骤来建立判定表。判定表驱动法实例①确定规则的条数。这里有3个条件,每个条件有两个取值,故应有:
2*2*2=8条规则。②列出所有的条件桩和动作桩。条件桩有三项:功率大于50马力、维修记录不全、已运行10年以上动作桩有两项:给于优先处理、做其他处理判定表驱动法实例确定规则的条数、列出所有的条件桩和动作桩:③填入条件项。条件项共有8种不同的组合,把它们填入表中。④填入动作项,得到初始判定表。根据程序规格要求,把每种条件组合应执行的操作填入表中相应的位置,这样便得到如图所示的初始判定表。判定表驱动法实例填入条件项和动作顶,得到初始判定表:⑤化简。得到的初始判定表中,规则1、2可以合并;5、7可以合并;6、8可以合并。合并相似规则后得到最终的判定表。判定表驱动法实例合并相似规则后得到最终的判定表:
接下来,我们根据最终判定表的5条规则,来设计5个测试用例,然后再用设计好的测试用例来对软件进行测试即可。按照最终判定表的5条规则,设计的测试用例如表所示。判定表驱动法实例判定表驱动法实例讨论题对初始判定表,有没有其它化简方案?
当然,也不是任何时候都适合使用判定表驱动法来设计测试用例,适合使用判定表驱动法的条件如下:1、规格说明以判定表形式给出,或很容易转换成判定表。2、条件的排列顺序不会也不影响执行哪些操作。判定表
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 施工方案-联系函(3篇)
- 疫情消毒污水管理制度(3篇)
- 社区居家健康监测管理制度(3篇)
- 认定收费管理制度的意义(3篇)
- 酒店油烟道清洗管理制度(3篇)
- 门窗业成本控制管理制度(3篇)
- 兽药培训课件分享稿
- 《GA 878-2010警用炊事汽车》专题研究报告深度
- 把握情绪的主旋律课件2025-2026学年北师大版(2015年)初中心理健康七年级全一册
- 《GA 745-2017银行自助设备、自助银行安全防范要求》专题研究报告深度
- 2025年全国职业院校技能大赛中职组(母婴照护赛项)考试题库(含答案)
- 2026江苏盐城市阜宁县科技成果转化服务中心选调10人考试参考题库及答案解析
- 托管机构客户投诉处理流程规范
- 2026年及未来5年中国建筑用脚手架行业发展潜力分析及投资方向研究报告
- 银行客户信息安全课件
- 2026年四川单招单招考前冲刺测试题卷及答案
- 2026年全国公务员考试行测真题解析及答案
- 2025新疆华夏航空招聘笔试历年难易错考点试卷带答案解析
- (2025)70周岁以上老年人换长久驾照三力测试题库(附答案)
- 金太阳山西省名校三晋联盟2025-2026学年高三上学期12月联合考试语文(26-177C)(含答案)
- 2026年泌尿护理知识培训课件
评论
0/150
提交评论