软件测试基础系列培训 -判定表与因果图法.ppt

上传人:仙人指路1688 文档编号:2818294 上传时间:2023-02-25 格式:PPT 页数:55 大小:2.27MB
返回 下载 相关 举报
软件测试基础系列培训 -判定表与因果图法.ppt_第1页
第1页 / 共55页
软件测试基础系列培训 -判定表与因果图法.ppt_第2页
第2页 / 共55页
软件测试基础系列培训 -判定表与因果图法.ppt_第3页
第3页 / 共55页
软件测试基础系列培训 -判定表与因果图法.ppt_第4页
第4页 / 共55页
软件测试基础系列培训 -判定表与因果图法.ppt_第5页
第5页 / 共55页
点击查看更多>>
资源描述

《软件测试基础系列培训 -判定表与因果图法.ppt》由会员分享,可在线阅读,更多相关《软件测试基础系列培训 -判定表与因果图法.ppt(55页珍藏版)》请在三一办公上搜索。

1、高效测试用例设计(3)判定表与因果图法,内部资料,请勿外传,技术质量部 2009年08月,软件测试基础系列培训 ST-2009-006,范围与目标,课程目标:理解判定表和因果图法概念掌握判定表和因果图法设计测试用例方法,2,内容提要,第一节:判定表法判定表的概念判定表的组成判定表的建立判定表法举例第二节:因果图法第三节:实例讲解,3,引入判定表,4,客户订货单中,价格在500以上,且没有过期的,发出提货单和发货单;在500以上,已过期的,只发提货单,在500以下的,不论是否过期,都发出提货单和发货单,其中已过期的,还发出客户通知单,判定表的概念,判定表是分析和表达多逻辑条件下执行不同操作的情况

2、的工具其优点:将复杂的问题按照各种可能的情况全部列举出来简明并避免遗漏能够设计出比较完整的测试用例集合,5,判定表的概念(续),适用于针对不同逻辑条件的组合值,分别执行不同的操作如if else 或者switch case这种选择结构不能表达重复执行的动作,例如循环结构,6,判定表的组成,判定表通常由4部分组成:,7,条件桩,条件项,动作桩,动作项,规则,判定表的组成(续),条件桩列出问题的所有条件条件项针对条件桩给出的条件列出所有可能的取值动作桩列出问题规定的可能采取的操作动作项指出在条件项的各组取值情况下应采取的动作,8,判定表的组成(规则),规则 任何一个条件组合的特定取值及其相应要执行

3、的操作称为规则 在判定表中贯穿条件项和动作项的一列就是一条规则。也即判定表中列出多少组条件取值,就有多少条规则,既条件项和动作项有多少列,9,判定表的组成(规则),规则化简 就是规则合并有两条或多条规则具有相同的动作,并且其条件项之间存在着极为相似的关系,10,判定表的组成(规则),如下图左端,两规则动作项一样,条件项类似,在1、2条件项分别取Y、N时,无论条件3取何值,都执行同一操作。即要执行的动作与条件3无关,于是可合并,“”表示与取值无关:,11,判定表的组成(规则),与上类似,下图中,无关条件项“”可包含其他条件项取值,具有相同动作的规则可合并,12,13,大家想一想如何将下表进行化简

4、,判定表的组成(规则),14,判定表的组成(规则),化简后的判定表如下:,判定表的建立,15,构造判定表的5个步骤:确定规则的个数 有n个条件的判定表有2n个规则(每个条件取真、假值)列出所有的条件桩和动作桩填入条件项填入动作项,得到初始判定表简化判定表,合并相似规则,判定表的应用,适用于使用判定表设计测试用例的条件:规格说明以判定表形式给出,或较容易转换为判定表条件的排列顺序不会也不应影响执行的操作规则的排列顺序不会也不应影响执行的操作当某一规则的条件已经满足,并确定要执行的操作后,不必检验别的规则如果某一规则的条件要执行多个操作,这些操作的执行顺序无关紧要,16,判定表法举例,”对功率大于

5、50马力的机器且维修记录不全或已运行10年以上的机器,应给予优先的维修处理”。这里假定,“维修记录不全”和“优先维修处理”均已在别处有更严格的定义。请建立判定表,17,判定表法举例(续),(1)确定规则的个数:以上描述有3个条件,每个条件有两个取值,故应有2*2*2=8种规则,18,(2)列出所有的条件桩和动作桩,判定表法举例(续),(3)填入条件项,可从最后1行条件项开始,逐行向上填满,19,(4)填入动作桩和动作项,这样便得到形如下页的初始判定表,判定表法举例(续),20,课堂练习,以学生的奖学金评定为例,说明判定表的应用 决定受奖的条件为:成绩优秀占70或50以上 成绩为中或中以下占15

6、或20以下 团结纪律为优良或一般者 奖励方案为:一等奖、二等奖、三等奖、鼓励奖四种描述此学生奖励政策的判定表见下页:,21,课堂练习(续),22,内容提要,第一节:判定表法第二节:因果图法什么是因果图使用因果图导出测试用例因果图的基本图形符号和约束符号因果图法举例第三节:实例讲解,23,什么是因果图法,定义 利用图解法分析输入的各种组合情况,从而设计测试用例的方法,它适合于检查程序输入条件的各种组合情况产生的背景等价类划分法和边界值分析方法没有考虑输入条件的各种组合及相互制约关系。可能忽视多个输入条件组合起来可能出错的情况因果图适用于描述多种条件的组合、相应产生多个动作的形式,24,什么是因果

7、图法(续),25,其优点考虑了多个输入之间的相互组合及制约关系能帮我们按一定步骤,高效率地选择测试用例为我们指出程序规格说明描述中存在着什么问题其缺点输入条件与输出结果的因果关系,有时难以从软件需求规格说明书得到即便得到了这些因果关系,也会因为因果关系复杂导致因果图非常庞大,测试用例数目极其庞大,因果图的基本图形符号,因果图中用来表示4种因果关系的基本符号:,26,因果图的基本图形符号(续),图中的左结点ci表示输入状态(或称原因),右结点ei表示输出状态(或称结果)ci 与 ei 取值0或1,0表示某状态不出现,1则表示某状态出现因果图中的4种基本关系恒等:若 c1 是1,则 e1 也为1,

8、否则 e1 为0非:若 c1 是1,则 e1 为0,否则e1为1或:若 c1 或 c2 或 c3 是1,则 e1 为1,否则 e1 为0与:若 c1 和 c2 都是1,则 e1 为1,否则 e1 为0,27,因果图的约束符号,因果图中用来表示约束关系的约束符号:,28,因果图的约束符号(续),输入状态、输出状态相互之间可能存在某些依赖关系,称为“约束”输入条件的约束:E、I、O、R输出条件的约束:ME约束(异):a和b中最多有一个可能为1,即a和b不能同时为1I约束(或):a、b、c中至少有一个必须为1,即:a、b、c不能同时为0O约束(唯一):a和b必须有一个且仅有一个为1R约束(要求):a

9、是1时,b必须是1,即a为1时,b不能为0M约束(强制):若结果a为1,则结果b强制为0,29,因果图导出测试用例的步骤,因果图法最终生成的是判定表利用因果图生成测试用例的基本步骤如下:(1)分析原因(即输入条件或输入条件的等价类)和结果(即输出条件)(2)找出原因与结果之间、原因与原因之间对应关系,画出因果图(3)在因果图上用一些记号表明约束或限制条件,来表示有些原因与原因之间、原因与结果之间的组合情况不可能出现(4)把因果图转换为判定表(5)根据判定表中的每一列设计测试用例,30,因果图法举例,程序的规格说明要求:输入的第一个字符必须是#或*,第二个字符必须是一个数字,此情况下进行文件的修

10、改;如果第一个字符不是#或*,则给出信息N,如果第二个字符不是数字,则给出信息M,31,因果图法举例(续),解题步骤:(1)分析程序的规格说明,列出原因和结果(2)找出原因与结果之间的因果关系、原因与原因之间的约束关系,画出因果图(3)将因果图转换成判定表(4)根据(3)中的判定表,设计测试用例的输入数据和预期输出,32,因果图法举例(续),33,(1)分析程序规格说明中的原因和结果:,因果图法举例(续),34,(2)画出因果图(编号为10的中间结点是导出结果的进一步原因):,35,(3)将因果图转换成判定表:,因果图法举例(续),36,因果图法举例(续),(4)根据判定表中的每一列设计测试用

11、例:,内容提要,第一节:判定表法第二节:因果图法第三节:实例讲解以自动售货机软件为例,37,38,有一个处理单价为3 元钱的饮料的自动售货机软件测试用例的设计其规格说明如下:“若投入3或5元钱,押下橙汁或雪碧的按钮,则相应的饮料就送出来。若售货机没有零钱找,则一个显示零钱找完的红灯亮,这时在投入5元并押下按钮后,饮料不送出来而且5元也退出来;若有零钱找,则显示零钱找完的红灯灭,在送出饮料的同时退还2元硬币。,实例讲解,39,实例讲解(续),(1)分析这一段说明,列出原因和结果,40,实例讲解(续),(2)画出因果图,如下页图所示。所有原因结点列在左边,所有结果结点列在右边。建立两个中间结点,表

12、示处理的中间状态,41,实例讲解(续),2,1,3,4,25,12,11,14,21,13,24,22,23,5,E,E,售货机有零钱找,投入3元,投入5元,押下橙汁按钮,押下雪碧按钮,售货机零钱找完灯亮,送出橙汁饮料,退还5元,退还2元,送出雪碧饮料,钱付清,押下按钮,可找2元,该找2元,42,实例讲解(续),(3)由于 2 与 3,4 与 5 不能同时发生,分别加上约束条件E(4)转换成判定表在判定表中,阴影部分表示因违反约束条件的不可能出现的情况,删去。第16列与第32列因什么动作也没做,也删去。最后可根据剩下的16列作为确定测试用例的依据。参看下页,课堂练习,以中国象棋中走马的测试用例

13、设计为例学习因果图的使用方法,44,课堂练习(解答),45,分析中国象棋中走马的实际情况1、如果落点在棋盘外,则不移动棋子;2、如果落点与起点不构成日字型,则不移动棋子;3、如果落点处有自己方棋子,则不移动棋子;4、如果在落点方向的邻近交叉点有棋子(绊马腿),则不移动棋子;5、如果不属于1-4条,且落点处无棋子,则移动棋子;6、如果不属于1-4条,且落点处为对方棋子(非老将),则移动棋子并除去对方棋子;7、如果不属于1-4条,且落点处为对方老将,则移动棋子,并提示战胜对方,游戏结束。,课堂练习(解答),46,根据分析明确原因和结果原因:1、落点在棋盘上;2、落点与起点构成日字;3、落点处为自己

14、方棋子;4、落点方向的邻近交叉点无棋子;5、落点处无棋子;6、落点处为对方棋子(非老将);7、落点处为对方老将。,课堂练习(解答),47,结果:21、不移动棋子;22、移动棋子;23、移动棋子,并除去对方棋子;24、移动棋子,并提示战胜对方,结束游戏。添加中间节点11,目的是作为导出结果的进一步原因,简化因果图导出的判定表,课堂练习(解答),48,2,1,3,5,24,7,4,11,23,21,22,6,0,E,课堂练习(解答),49,考虑结果不能同时发生,所以对其施加唯一约束O。原因5、6、7不能同时发生,所以对其施加异约束E.根据因果图建立判定表(略),课程回顾,判定表和因果图的概念判定表

15、的组成和建立因果图的基本符号和约束符号因果图和判定表设计用例的步骤,50,问题思考,接口如何测试?,51,提问时间,欢迎大家提问、讨论!,52,课后作业(判定表),某厂对一部分职工重新分配工作,分配原则是:年龄不满20岁,文化程度是小学者脱产学习,文化程度是中学者当电工。年龄满20岁但不足50岁,文化程度是小学或中学者,男性当钳工,女性当车工;文化程度是大学者当技术员。年龄满50岁及50岁以上,文化程度是小学或中学者当材料员,文化程度是大学者当技术员。根据以上描述,建立判定表。,53,课后作业(因果图),奖金计算软件:员工分为普通员工和管理人员员工表现分为普通,优秀和特出贡献(普通和优秀员工都可能有特出贡献,普通员工表现为普通、优秀、特出贡献和管理人员表现为普通、优秀,特出贡献拿的奖金是不同的)根据以上描述用因果图设计用例。,54,55,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号