常见的测试用例设计方法7—因果图法

常见的测试用例设计方法7—因果图法一 因果图法的定义因果图法是一种利用图解法分析输入的各种组合情况 从而设计测试用例的方法 他适合与检查程序输入条件的各种组合情况 二 因果图法的意义等价类划分和边界值分析方法都是着重考虑输入条件 但没有考虑输入条件的各种组合 输入条件之间的相互制约关系 这样虽然各种输入条件可能出错的情况已经测试测试到了 但多个输入条件组合起来可能出错的情况却被疏忽了 因果果图的基本约束约束 是指输入状态还存在这某种依赖关系 这种关系称作为约束 E 约束 异 表示 a b 两原因不会同

目录

一,因果图法的定义

二,因果图法的意义

三,因果图法的适用场合

四,因果图法的表示

五,因果图法的四种关系

六,因果图的基本约束

七,因果图的分析步骤及案例


常见的测试用例设计方法7---因果图法

一,因果图法的定义

因果图法是一种利用图解法分析输入的各种组合情况,从而设计测试用例的方法,他适合与检查

程序输入条件的各种组合情况。

二,因果图法的意义

等价类划分和边界值分析方法都是着重考虑输入条件,但没有考虑输入条件的各种组合、输入条

件之间的相互制约关系。这样虽然各种输入条件可能出错的情况已经测试测试到了,但多个输入

条件组合起来可能出错的情况却被疏忽了。

三,因果图法的适用场合

如果在测试时必须考虑输入条件的各种组合,则可能的组合数目将是天文数字,因此必须考虑采

用一种适合于描述多种条件的组合、相应产生多个动作的形式来进行测试用例的设计,这就需要

利用因果图(逻辑模型)

四,因果图法的表示

  • CI:原因
  • EI:结果

注意:其中I取“0”表示状态不出现,“1”表示状态出现,若有多状态,可取大于1的多个值表示。

五,因果图法的四种关系

常见的测试用例设计方法7---因果图法

  • 恒等:原因结果同时出现,若c1是1,则e1也是1;否则e1为0.
  • 非~:原因出现,结果不出现;原因不出现,结果出现。若c1是1,则e1是0;否则e1 是1;
  • 或V:原因只有一个出现,结果就出现;原因都不出现,结果就不出现。若c1或c2或c3是1,则e1是1;否则e1为0。“或”可有任意个输入
  • 且/与^:原因都出现,结果才出现。若c1和c2都是1,则e1为1;否则e1为0。

六,因果图的基本约束

约束:是指输入状态还存在这某种依赖关系,这种关系称作为约束。

E约束(异)表示ab两原因不会同时成立,最多一个能成立

I约束(或):abc三个原因中至少有一个必须成立。

O约束(唯一):ab当中必须有一个,且仅有一个成立

R约束(要求):a出现时,b必须也出现,不可能a出现b不出现

M约束(屏蔽):表示当a1时,b必须是0。而当a0时,b的值不定

常见的测试用例设计方法7---因果图法

七,因果图的分析步骤及案例

  1. 分析需求,获取条件和动作
  2. 分析条件与条件,条件与动作之间的关系
  3. 通过关系画出因果图
  4. 将因果图转化为判定表

需求

  1. 输入手机号或者电子邮箱作为账户名
  2. 输入正确验证码
  • 两项验证成功,填写账户信息
  • 如果一项验证不正确(输入手机号或电子邮箱格式错误),报错L
  • 验证码输入错误,报错M

常见的测试用例设计方法7---因果图法

1 2 3 4
条件 第一项 输入手机号 x 0 1 0
输入电子邮箱 x 0 0 1
第二项 输入正确验证码 0 x 1 1
操作 填写账户信息
报错L
报错M

 了解更多?测试用例设计方法?,可以关注博主或者专栏哦!

常见的测试用例设计方法1—等价类划分,请戳下面链接!

常见测试用例设计方法1—等价类划分_小宝的宝呢的博客-CSDN博客

常见的测试用例设计方法2—边界值划分,请戳下面链接!

常见测试用例设计方法2—边界值划分_小宝的宝呢的博客-CSDN博客

常用测试用例设计方法3-判定表法,请戳下面链接!

常用测试用例设计方法3-判定表法_小宝的宝呢的博客-CSDN博客

常用测试用例设计方法4-场景法,请戳下面链接!

常用测试用例设计方法4-场景法_小宝的宝呢的博客-CSDN博客

常用测试用例设计方法5-错误推算法,请戳下面链接!

常用测试用例设计方法5-错误推算法_小宝的宝呢的博客-CSDN博客

常用测试用例设计方法6-状态迁移法,请戳下面链接!

常用测试用例设计方法6-状态迁移法_小宝的宝呢的博客-CSDN博客

常用测试用例设计方法7-因果图法,请戳下面链接!

常见的测试用例设计方法7—因果图法_小宝的宝呢的博客-CSDN博客

常用测试用例设计方法8-正交试验法,请戳下面链接!

https://blog.csdn.net/weixin_/article/details/

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/231357.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • c++实现登录注册功能(用Javaweb制作登录注册页面)

    这两天c#大作业要求做一个简单的通讯录系统,我就先做了登录和注册的功能,在网上看了一些代码,自己再做,终于做出来了。做的不是很美观,但是可以简单实现。首先用sqlserver建表。我建了一个名为user_info的表,添加username和passdword两个字段。创建登录页面,改了一些控件的名称,效果如下图:登录界面代码如下:privatevoidbtn_Login…

    2022年4月15日
    411
  • java定义一个数组并初始化_java中什么是数组

    java定义一个数组并初始化_java中什么是数组介绍学习Java的朋友想必对数组并不陌生,它需要使用之前对其进行初始化,这是因为数组是引用类型,声明数组只是声明一个引用类型的变量,并不是数组对象本身,只要让数组变量指向有效的数组对象,程序中就可使用该数组变量来访问数组元素。所谓数组初始化就是让数组名指向数组对象的过程,该过程主要分为两个步骤,一是对数组对象进行初始化,即为数组中的元素分配内存空间和赋值,二是对数组名进行初始化,即为数组名赋值为数…

    2025年11月10日
    3
  • 【matlab】常用函数importdata

    importdata没有头文件并且全是数字用load,有头文件并且数据类型统一用importdata。查看帮助用helploadhelpimportdatadata.txt内容如下:a1a2a3b1b2b3123444656测试代码:delimiterIn=”;%字符分隔符headerlinesIn=2;%文件头的行数A=

    2022年4月9日
    56
  • Openstack组件部署 — Keystone Install & Create service entity and API endpoints

    Openstack组件部署 — Keystone Install & Create service entity and API endpoints

    2021年9月15日
    50
  • SPI接口扫盲 SPI定义/SPI时序(CPHA CPOL)

    SPI接口扫盲 SPI定义/SPI时序(CPHA CPOL)SPI接口扫盲为何要写这篇文档?百度上找出来的SPI接口中文描述都说的太过简略,没有一篇文档能够详尽的将SPI介绍清楚的。wikipedia英文版[注释1]中,SPI接口介绍的很好,但是毕竟是英文版,读起来终究不如母语舒服,所以我结合自己的工作经验,对其进行了汉化、整理。个人SPI接口相关经验:1.参与过国产某芯片SPI接口样品验证、SPI接口服务DEMO开发(C语言)。2.使

    2022年6月18日
    46
  • 域渗透之MS14-068域提权漏洞

    域渗透之MS14-68域提权漏洞漏洞概述漏洞可能允许攻击者将未经授权的域用户账户的权限,提权到域管理员的权限。利用条件域控机器没有打MS14-068的补丁(KB3011780)需要一个域内用

    2021年12月13日
    64

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号