软件测试用例设计方法-因果图法

边界值法是等价类划分法的补充,所以,它们是一对搭档。

那么,判定表法有没有它的搭档呢?

答案是,有的。那就是本篇文章分享的用例设计方法------ 因果图法 。

定义

因果图法:

用来处理等价类划分和边界值考虑不到的情况,适用描述多种条件的组合,产生多个相应动作的测试方法;从程序规格说明书的描述中找出因果关系

因果图法,第一时间让我联想到的是,高中数学的排列组合。

关于这个联想,可能看完整篇文章后,你就有恍然大悟的感觉。

基本符号

在实例分析之前,有些基本的因果图符号需要说明。

首先是原因与原因之间的关系:

添加图片注释,不超过 140 字(可选)

其次是原因与结果之间的关系:

需要特别说明的是,因果图相当于特殊的场景法,是判定表的搭档。

对于思维逻辑缜密的测试人员,可以直接写出判定表。

但是,有时候不能直接通过原因得到结果,需要借助中间状态,随着原因、结果不断增多,唯有依赖因果图才能更好地梳理个中关系。

具体的操作步骤如下:

分析程序的规格说明书中,哪些是原因,哪些是结果

1、原因:指输入条件或输入条件的等价类 结果:指输出条件,给每一个原因和结果赋予一个标识符 2、分析程序规格说明书中的描述,确定原因与原因,原因与结果之间的关系,画出因果图;由于语法环境的限制,一些原因与原因之间,原因与结果之间的组合不能直接出现。对于此类情况,在因果图中用记号标明约束或限制条件 3、将因果图转化为判定表 4、根据判定表的每一列设计测试用例

实例分析

题目:对于提交的作业,作业成绩达到80分或者已经得到老师确认,则允许进行下一课时的学习。

1、确定需求中的原因与结果

2、确定因果图中的约束

首先,原因与原因之间,关于分数,A1 与 A2 是互斥关系(O);关于老师是否确认,A3 与 A4 是互斥关系(O)。

分数与老师是否确认之间可以独立存在,属于或关系(I)

其次关于原因与结果,各个原因可以直达结果,或者分数与老师是否确认进行两两组合,形成中间状态,再到达结果。

得到的因果与中间状态列表:

梳理关系得到因果图:

3、讲因果图转化为判定表:

4、根据判定表来写测试用例了。

以上就是本篇文章所要分享的内容,欢迎各位大牛指正。你的指正,能让我在测试之路上快速成长。

Leo Never Stop Fighting!


以下是我收集到的比较好的学习教程资源,虽然不是什么很值钱的东西,如果你刚好需要,可以评论区,留言【777】直接拿走就好了

各位想获取资料的朋友请 点赞 + 评论 + 收藏 ,三连!

三连之后我会在评论区挨个私信发给你们~

相关推荐
测试老哥19 分钟前
功能测试干了三年,快要废了。。。
自动化测试·软件测试·python·功能测试·面试·职场和发展·压力测试
钱钱钱端1 小时前
如何使用Postman搞定带有token认证的接口实战!
自动化测试·软件测试·测试工具·接口测试·压力测试·postman·测试工程师
Lossya15 小时前
【自动化测试】常见的自动化遍历工具以及如何选择合适的自动化遍历工具
自动化测试·功能测试·测试工具·自动化·测试
测试界柠檬16 小时前
接口测试到底测试什么?
自动化测试·软件测试·功能测试·程序人生·职场和发展·单元测试·压力测试
Lossya19 小时前
【自动化测试】UI自动化的分类、如何选择合适的自动化测试工具以及其中appium的设计理念、引擎和引擎如何工作
自动化测试·测试工具·ui·appium·自动化
测试界柠檬1 天前
面试真题 | web自动化关闭浏览器,quit()和close()的区别
前端·自动化测试·软件测试·功能测试·程序人生·面试·自动化
微刻时光1 天前
Redis集群知识及实战
数据库·redis·笔记·学习·程序人生·缓存
霍格沃兹测试开发学社测试人社区1 天前
人工智能 | 基于ChatGPT开发人工智能服务平台
软件测试·人工智能·测试开发·chatgpt
大柏怎么被偷了2 天前
【软件测试】测试的岗位有哪些?
软件测试·测试
哲伦贼稳妥2 天前
程序人生-我的外服经历(4)
经验分享·程序人生·职场和发展