判定表
- 定义:分析和表述若干输入条件下,被测对象针对这些输入输出的响应的一种工具。在遇到复杂业务逻辑时可以利用该表理清逻辑关系。
- 重要概念
条件
条件桩:需求规格说明书定义的被测对象的所有输入(手机号,验证码)
条件项:针对条件桩所有可能输入数据的真假值 (输入正确的手机号,输入错误的手机号)
动作 动作桩:针对条件,被测对象可能采取的所有操作 (针对输入错误的手机号,给个反应手机号错误)针对动作桩,被测对象响应的可能取值
规则:动作项和条件项组合在一起,形成的业务逻辑处理规则 - 判定表应用步骤
- 理解需求,确定条件桩、动作桩
- 设计及优化判定表
- 填写动作项
- 根据判定表输出结果的表现,进行判定表的合并(非必须),
简化判定表;如果输出相同, 在对应输入中,有且只有一个条件的取值对动作不产生任何影响则可合并
例子:登录模块为例,生成判定表:
(1)正确的账号密码登录成功
(2)用户名和密码为空:提示用户名或密码不能为空
(3)用户名输入错误:提示用户名或密码错误,用户名和密码清空
(4)用户名正确,密码错误:提示密码错误,用户名保留,密码清空
解答:
(1)条件桩:用户名、密码
(2)动作桩:登录成功、提示用户名或密码错误,用户名和密码清空、提示密码错误,密码清空、提示用户名或密码不能为空
适用于逻辑关系比较简单的模块或软件,例如:登录的用户名和密码。 (强调二个都输入完之后才校验,用判定表)
作业:对于提交的作业,作业成绩达到80分或已经由刀锋确认则进行允许下一课时的学习,否则不处理!!生成判定表
因果图
因果图法设计测试用例实例引入:
有一个单价为五角硬币的饮料自动售货机软件。需求如下:
(1)若售货机没有零钱找,则一个显示“零钱找完”的红灯亮,以提示顾客在此情况下不要投入1元硬币,否则此灯不亮。
(2)顾客投入5角硬币,然后按下“橙汁”或“啤酒”按钮,则相应的饮料杯送出。顾客投入1元硬币并按下“橙汁”或“啤酒”按钮后,若售货机没有零钱找,则显示“零钱找完”的好红灯亮,1元硬币被退出,且去饮料送出;若有零钱找,则五角硬币退出且饮料被送出。
因果图会生成一张判定表!!!共有32种情况 - 主要组成部分:原因 中间节点 结果
- 利用因果图设计测试用例应遵循的步骤:
(1)分析程序的规格说明书中哪些是原因,哪些是结果。所谓原因,是指输入条件或输入条件的等价类,而结果是指输出条件,给每一个原因和结果赋一个表示符。
(2)分析程序规格说明书中的语义,确定原因与原因,原因与结果之间的关系,画出因果图。
(3)由于语法环境的限制,一些原因与原因之间,原因与结果之间的组合不能出现。对于这种特殊情况,在因果图中用一些记号表明约束或限制条件。
(4)将因果图转化为判定表。
(5)根据判定表的每一列设计测试用例。
当然,若能直接得到判定表,可以直接根据判定表设计测试用例。
因果图的作用就是协助生成判定表的!!!
作业:对于提交的作业,作业成绩达到80分或已经由刀锋确认则进行允许下一课时的学习,否则不处理!!
因果图如下: