测试用例设计方法_因果图法(游戏向)

测试用例设计方法_因果图法(游戏向)一 因果图法简介 1 1 什么是因果图法 因果图 Cuase effectGraph 是一种描述输入条件的组合以及每种组合对应的输出的图形化工具 在因果图的基础上可以设计测试用例 因果图法也是黑盒测试中非常重要的测试方法 一个游戏产品 软件中会存在大量的输入域 输出域 其中包括很多输入条件与输出条件 因果图法用线和不同的符号将输入和输出之间的因果关系 约束关系进行标记 形成一张网状图 对此我们称之为因果图法 1 2 因果图法的优缺点优点 1 因果图法能够对输入域与输出域的

一、因果图法简介

  因果图(Cuase-effect Graph)是一种描述输入条件的组合以及每种组合对应的输出的图形化工具。在因果图的基础上可以设计测试用例。

优点:

  1、因果图法能够对输入域与输出域的数据集合或子数据进行完整的关系逻辑梳理,设计多个输入条件的组合测试用例,可针对梳理后的结果选择对应数据进行高效的用例设计

  2、因果图法能够帮助我们梳理出各类数据集合的逻辑关系,梳理后对比策划案,也同样能用于发现策划案中的遗漏内容,发现设计缺陷,以此保证需求的完整性

  3、因果图法适用于各类的输入输出场景以及因果组合,在游戏领域中适用性高、范围广,不容易遗漏

1.3 因果图法的使用条件

  1、拥有较多的输入条件

  2、拥有较强的逻辑关系(针对原因、结果)

  3、拥有较强的约束关系或互斥关系
  

1.4 因果图法测试用例的设计步骤

  1、确定策划所提及内容中的”原因“与”结果

  2、确定原因与结果之间的逻辑关系

  3、确定因果图中的各个约束并列举

  4、画出因果图产出最终结果设计测试用例

  5、(拓展)依据因果图的最终产出结果转换为判定表

  6、(拓展)简化判定表数据,依据最终数据设计测试用例

  

二、因果图法应用场景

  在界面中有多个控件,控件之间有组合或限制关系,不同的输入组合会对应不同的输出结果,多个输入域、输出域以及数据集合,也可以使用因果图法进行整合

  某游戏有酷爽夏日运营活动,酷爽夏日活动设立了一个自动售货机,售货机里售卖饮料、啤酒,对其采用因果图方法设计测试用例。需求如下:
  

    (1)若售货机没有零钱找,则一个显示 “零钱找完”的红灯亮,以提示顾客在此情况下不要投入1元钱,否则此红灯不亮。
    (2)顾客投入5角硬币,然后按下“橙汁”或“啤酒”按钮,则相应的饮料被送出。

    (3)顾客投入1元硬币并按下“橙汁”或“啤酒”按钮后,若售货机没有零钱找,则显示“零钱找完”的红灯亮,1元硬币被退出,且无饮料送出;若有零钱找,则五角硬币被退出且饮料被送出。

首先根据需求列举出原因:
在这里插入图片描述

其次根据原因列举出结果:
在这里插入图片描述

接着根据策划案需求设置中间节点:
在这里插入图片描述
根据列出的原因、结果以中间节点进行结合画出对应因果图:
在这里插入图片描述
2号与3号不能够同时出现,投入硬币的操作为互斥关系,4号与5号操作也不能够同时出现,同为互斥关系
  




将因果图转成判定表:
在这里插入图片描述
  在构成的判定表中,原因、中间节点、结果的取值为0表示其代表的状态不出现;为1表示状态出现。

根据剩余列进行用例设计:
在这里插入图片描述

这个例子中,事实上在分析问题时进行了一些简化,主要有以下几点:

  判定表中8,12,24,28列不符合常理(投币却没选饮料),但却是可能发生的。可以考虑对需求做一下完善:若投币N秒后仍没有选择饮料,售货机上“请选择饮料”灯亮。进而根据需求规格说明改进因果图和判定表。

  判定表中14,15,30,31列表示只选择饮料却没投币。可以对需求做以下完善:只选择饮料却没有投币时,自动售货机上“请投币”的灯亮。进而根据需求规格说明改进因果图和判定表。

  26、27表示在自动售货机没零钱找的情况下投入五角钱,此时自动售货机进入有零钱找状态,由于需求说明没有考虑这一特殊状态,故判定表中第26、27列的21号结果没有从1变成0实际上是不正确的。在需求规格说明书中应对此种情况加以考虑,进而改进因果图和判定表。

  6、7列对应的是自动售货机在有零钱的情况下找了5角钱,此刻自动售货机有可能进入无零钱找的状态,由于需求说明没有考虑这一特殊状态,故判定表中第6、7列的21号结果没有从1变成0实际上是不一定正确的。在需求规格说明书中应对此种情况加以考虑,进而改进因果图和判定表。

测试用例设计方法_因果图法(游戏向)

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

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

(0)
上一篇 2026年3月20日 上午9:01
下一篇 2026年3月20日 上午9:01


相关推荐

  • 写给大忙人看的 – Java中从MinIO服务器中下载文件(3)[通俗易懂]

    写给大忙人看的 – Java中从MinIO服务器中下载文件(3)[通俗易懂]前面两章介绍了MinIO文件服务器的环境搭建,以及在Java中上传文件至MinIO文件服务器中,现在,一起来看下如何从MinIO文件服务器中下载文件吧1、获取文件对象我们在MinIO工具类中,获取文件对象的方法,即获取文件的输入流对象/***获取文件**@parambucketNamebucket名称*@paramobjectName文件名称*@return二进制流*/@SneakyThrowspublicInputStreamge

    2022年7月12日
    276
  • Python里面数组拼接方法介绍

    Python里面数组拼接方法介绍numpy数组拼接方法介绍转载来源:https://blog.csdn.net/zyl1042635242/article/details/43162031数组拼接方法一思路:首先将数组转成列表,然后利用列表的拼接函数append()、extend()等进行拼接处理,最后将列表转成数组。示例1:>>>importnumpyasnp>>&g…

    2022年5月5日
    810
  • 大数据去重方案

    大数据去重方案

    2021年11月22日
    70
  • 正则表达式与上下文无关文法

    正则表达式与上下文无关文法保留版权 转载需注明出处 潘军彪的 CSDN 博客 http blog csdn net panjunbiao 正则表达式正则表达式在日常开发中时不时都会遇到 我们先来看看正则表达式 RegularExpre 的定义 参考龙书英文第 2 版 121 页 是一个正则表达式 它生成的语言 L 等价于 即 L 就是一个空字符串如果 a 属于符号集 那么 a

    2026年3月16日
    4
  • Linux正确删除软连接[通俗易懂]

    在Linux上删除软连接不要使用rm-rf!!!在Linux上删除软连接不要使用rm-rf!!!在Linux上删除软连接不要使用rm-rf!!!因为如果使用rm-rflinkName的方式,如果不小心在目录后面加了“/”,或者按了Tab键补全,执行之后会删除源目录文件。如果要使用rm-rflinkName的时候一定要注意源、目标文件或目录都不要在后面加…

    2022年4月14日
    195
  • Lua的三目运算

    Lua的三目运算大家都知道的三目运算符在 lua 中的写法是 aandborc 避免当 b 是 nil 的时候会返回 c 的值的写法 aand b or c 1 示例 test 5print test gt 0 test gt 0and 成功 or 失败 test gt 0 成功或 test 1print test gt

    2026年3月18日
    2

发表回复

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

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