首页 > 其他分享 >用例设计方法之因果图详解

用例设计方法之因果图详解

时间:2022-09-02 20:48:46浏览次数:54  
标签:充值 纸币 50 用例 详解 因果 100 输入

一、因果图概述
  • 因果图是从需求中找出因(输入条件)和果(输出或程序状态的改变),通过分析输入条件之间的关系(组合关系、约束关系等)及输入和输出之间的关系绘制出因果图,再转化成判定表,从而设计出测试用例的方法。

  • 该方法主要适用于各种输入条件之间存在某种相互制约关系或输出结果依赖于各种输入条件的组合时的情况

  • 注意:

    • 1)所有的输入输出条件的相互制约关系以及组合关系

    • 2)输出结果对输入条件的依赖关系。也就是什么样的输入组合会产生怎样的输出结果,即“因果关系”

二、因果图符号与关系

  1. 条件和结果之间的关系

    • 左侧节点表示输入状态即原因,右侧节点表示输出状态即结果

  

  1. 条件与条件之间的关系

  

 

 

  要求案例:qq做自动登录时,勾选自动登录,那么就一定要求勾上记住密码。

三、因果图分析步骤

  1. 找出所有原因,原因即输入条件或输入条件的等价类;找出所有的结果,结果即输出结果;

  2. 明确所有输入条件之间的关系;明确所有输出结果之间的关系

  3. 找出什么样的输入条件组合会出现哪种输出结果,画出因果图

  4. 把因果图转换成判定表(决策表);

  5. 为判定表(决策表)中的每一列表示的情况设计测试用例。

四、案例实战

  • 交通一卡通自动充值软件系统需求:

    系统只接收50元或100元纸币,一次充值自能使用一张纸币,一次充值金额只能为50元或100元 若输入50元纸币,并选择充值50元,完成充值后退卡,提示充值成功; 若输入50元纸币,并选择充值100元,提示输入金额不足,并退回50元; 若输入100元纸币,并选择充值50元,完成充值后退卡,提示充值成功,并找零50元; 若输入100元纸币,并选择充值100元,完成充值后退卡,提示充值成功; 若输入纸币后在规定时间内不选择充值按钮,退回输入的纸币,提示错误; 若选择充值按钮后不输入纸币,提示错误。

 

1.步骤一:找出所有条件和结果

 

2. 步骤二:画出因果图 

 

 

3. 步骤三:根据因果图得出判定表

4. 步骤四:根据判定表编写用例,每一列写一条用例

 

标签:充值,纸币,50,用例,详解,因果,100,输入
From: https://www.cnblogs.com/xiaoxiao-wu/p/16651146.html

相关文章

  • git rebase详解(图解+最简单示例,一次就懂)
    引言网上有太多讲rebase和merge的文章,但大多都是复制粘贴没有自己的理解,而且很多博客的例子写的过于复杂,让人没兴趣看下去。本文举最简洁的例子,大白话几句就让你快速掌握......
  • Python 的四种共享传参详解
    Python唯一支持的参数传递方式为共享传参(callbysharing),传递参数一共有四种传递方式,分别为:位置参数,默关键字参数和可变参数,其中可变参数分为两种(*args和**kargs)。一、......
  • git rebase详解(图解+最简单示例,一次就懂)
    引言网上有太多讲rebase和merge的文章,但大多都是复制粘贴没有自己的理解,而且很多博客的例子写的过于复杂,让人没兴趣看下去。本文举最简洁的例子,大白话几句就让你快速掌握re......
  • 自动填写体温脚本详解
    最近疫情又严重了起来,学校要求每天都要上报我们的早、中、晚体温情况,但是我们居然被要求中午就提供全天的体温,这很明显是一个纯纯欺上瞒下的工程。为了不每天浪费时间来扫......
  • MySQL Explain执行计划key_len详解(特意针对date和datetime详细测试说明)
    MySQLExplain执行计划key_len详解(特意针对date和datetime详细测试说明)我们在使用Explain查看SQL执行计划时,其中有一列为key_kenkey_len表示使用的索引长度,那么key_len......
  • pytest数据驱动应用-excel测试用例数据读取封装
    接口测试数据存放excel、json、yaml、数据库实例:注册功能参数变量名类型说明是否必填手机号mobile_phoneint新用户的手机号是密码pwdstring8-1......
  • session、cookie、token详解
    授权:给客户端授予权限鉴权:鉴定是否有访问权限1、会话会话跟踪是Web程序中常用的技术,用来跟踪用户的整个会话。常用的会话跟踪技术是Cookie与Session。Cookie通过在客户......
  • vue项目中main.js使用方法详解
    vue项目中main.js使用方法详解目录第一部分:main.js文件解析第二部分:Vue.use的作用以及什么时候使用Vue.use是什么?(官方文档)Vue.use()什么时候使用?补充:关于main.js方便小技......
  • 保姆级跑步姿势详解
    https://www.bilibili.com/video/BV1ER4y1J7hp    这个姿势的错误是迈的步子太大,落地点太过靠前会产生刹车效应正确的跑步姿势落地点,要尽可能靠近身体的正下方......
  • @RequestMapping注解详解
    功能RequestMapping注解是一个用来处理请求地址映射的注解,可用于类或方法的上方,用于类的上方可以作为父路径value属性 @RequestMapping(value={"/index","/hello"})p......