黑盒测试技术(Cause­Effect Graphing 因果图法)——软件质量保证与测试



前言

  • 等价分类法和边界值分析法的缺点是没有检查各种输入条件的组合。
  • 要检查输入条件的组合并非易事,因为即使可以将输入条件分成等价类,但它们的组合情况可能很多,如果没有一个系统的方法是难以设计测试用例
    的。
  • 借助因果图列出输入数据的各种组合与程序对应动作效果之间的阶段联系,构造判定表,由此设计测试用例是生成测试用例的有效办法。

一、因果图是什么?

□ 因果图是输入和输出之间逻辑关系的可视化表示,可以用布尔表达式表示。
□ 原因Cause是需求中的任何可能影响程序输出的条件。
□ 结果Effect是程序对某些输入条件组合的响应。

因果图中图形符号:

  • 关系符号
    在这里插入图片描述
    在这里插入图片描述
  • 约束符号

(原因间、结果间)
□ 在实际问题中,输入状态也存在一定的依赖关系,称为约束。
□ 输出状态之间存在限制。
□ 这些边用带约束符号的虚线表示

  1. E: 互斥约束(异约束):最容易出现,要选择的话只能两个原因中选一个或都不选,即C1C2两种情况不是互斥的
    在这里插入图片描述

  2. I: 包含约束(或约束):要求至少满足其中一个条件成立,不能全不选
    在这里插入图片描述

  3. O: 唯一约束:两个条件必须选一个,且仅一个
    在这里插入图片描述

  4. R: 要求约束:C2被需要,C1不能单独出现,相当于C2是C1的前提
    在这里插入图片描述

  5. M: 强制约束:如果E1出现,就把E2掩盖了,E2不能出现即E2此时不能为1
    在这里插入图片描述因果图设计的步骤

    1. 通过阅读需求来识别原因和影响。每个原因和结果被分配一个唯一的标识
      符。请注意,结果也可以是其他一些结果的原因。
    2. 用因果图表示因果关系。
    3. 将因果图转换为有限项决策表,简称决策表。
    4. 从决策表生成测试用例。
      在这里插入图片描述如何使用因果图设计测试用例
      i. 找原因,找结果
      ii. 看是否需要中间节点
      iii. 找原因,结果间的关系

二、例题

例题一

某企业工资管理软件一个模块的需求规格说明书描述如下:
(1)行政管理员工:严重过失,扣年终奖6%;过失:扣4%
(2)一线生产员工:严重过失,扣年终奖10%;过失:扣6%
答案

在这里插入图片描述
在这里插入图片描述

例题二

答案:

在这里插入图片描述决策表:
在这里插入图片描述
测试用例
在这里插入图片描述

例题三

Cause-Effect Testing:In a given network, the sendfile command is used to send a file to a user on a different file server. The sendfile command takes three arguments: the first argument should be an existing file in the sender’s home directory, the second argument should be the name of the receiver’s file server, and the third argument should be the receiver’s userid. If all the arguments are correct, then the file is successfully sent; otherwise the sender obtains an error message.
答案

在这里插入图片描述

例题四

在这里插入图片描述

答案

在这里插入图片描述

例题五

在这里插入图片描述
在这里插入图片描述

解答
在这里插入图片描述
在这里插入图片描述

总结

因果图设计的缺点

  • 不易理解
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值