黑盒测试用例设计方法-测试步骤设计(因果图,判定表,场景法,正交实验,功能图)

黑盒测试用例设计方法-测试步骤设计(因果图,判定表,场景法,正交实验,功能图)

一、因果图法

1、概念

  • 因果图法是一种适合于多种输入条件组合的测试方法
  • 根据输入条件的组合,约束关系和输出条件的因果关系,分析输入条件的各种组合情况,从而设计测试用例的方法
  • 它适合于检查程序输入条件涉及的各种组合情况

2、原因和结果的关系

  • 恒等。原因A成立,结果B一定成立。
    因果图-恒等

  • 。原因A成立时,结果B一定不成立。
    因果图-非

  • 。原因A、B、C三个条件只要有一个条件成立,结果D就一定会成立。
    因果图-或

  • 。原因A、B、C都成立时,结果D才会成立。
    因果图-与

3、原因和原因之间的关系
根据功能说明在因果图上加上约束条件。其中互斥、包含、唯一、要求是对原因的约束,屏蔽是对结果的约束。
假如原因成立用1表示,不成立用0表示。

  • 互斥(exclusive)。表示不同时为1,即A、B、C中至多只有一个为1。A+B+C≤1
    互斥

  • 包含(include)。表示至少有一个为1,即A、B、C中不同时为0。3≥A+B+C≥1
    包含

  • 唯一(only)。表示A、B、C中有且仅有一个1。A+B+C=1
    唯一

  • 要求(request)。表示若A=1,则B必须为1.即不可能A=1,B=0
    要求

4、结果之间的约束
假如结果成立用1表示,不成立用0表示。

  • 屏蔽(mask)。表示A结果出现,B结果一定不出现。
    比如:出现注册成功的结果,就一定不会出现注册失败的结果。
    屏蔽

5、因果图使用中的局限性
当原因和结果很多的时候,他们之间的关系连线就会很多,导致因果图的可读性变差。因此用作局部的小功能(原因和结果不是很多的时候)分析
不存在反向问题

6、因果图的优势
能够发现设计中存在的不足



二、判定表法

1、应用场合:
主要适用于多条件的内容组合与结果分析。

2、是分析和表达多逻辑条件下执行不同操作的情况的工具。它是由以下几个内容组成:

  • 条件桩:列出了问题的所有条件
  • 动作桩:列出了问题规定可能采取的操作。
  • 条件项:列出针对它左列条件的取值。
  • 动作项:列出在条件项的各种取值情况下应该采取的动作。

3、使用的条件
所有的条件桩在表中的顺序和位置互相不影响。所有的动作桩的顺序不会因为条件顺序的变化而产生不同。

4、实现的步骤:

  • 识别出操作条件(原因),和对应的动作(结果)
  • 分析条件的条件项(组合数量):如果有n个条件,每个条件有成立和不成立两种情况,那么最后一共会有2的n次方个组合数量。
  • 简化和优化结果。排除一些不可能存在情况。

5、适合使用判定表设计测试用例的条件:

  • 规格说明(需求)以判定表的形式给出,或很容易转换成判定表
  • 条件的排列顺序不影响执行哪些操作
  • 规则的排列顺序不影响执行那些操作
  • 当某一规则的条件已经满足,并确定要执行的操作后,不必检验别的规则
  • 如果某一规则要执行多个操作,这些操作的执行顺序无关紧要



三、场景法

场景法适用于解决业务流程清晰的系统或功能
1、原理

  • 软件几乎都是用事件触发来控制流程的。测试时,可以描绘出事件触发时的情景,有利于设计测试用例,同时使测试用例更容易理解和执行。
  • 基本流:软件功能按照正确的事件流实现的一条正确流程(软件按照正确的方式从头到尾去执行)。通常一个业务仅存在一个基本流,且基本流仅有一个起点和一个终点
  • 备选流:除了基本流之外的各支流,包含多种不同的情况

2、使用注意

  • 场景中必须有基本流
  • 场景中必须有内容从用例的开始,到用例的结束

3、设计用例的步骤(每一个场景都是一个测试用例)

  • 根据说明,描述出程序的基本流及各项备选流
  • 根据基本流和各项备选流生成不同的场景
  • 对每一个场景生成相应的测试用例
  • 对生成的所有测试用例重新复审,去掉多余的测试用例
  • 测试用例确定后,对每一个测试用例确定测试数据值



四、正交实验法

1、原理

  • 使用的工具:正交表。
  • 统计和分析实验数据,从大量实验中找到合适的实验数据组合。
  • 大量的实验组合中,挑选出来一部分具有代表性的点,进行试验,分析数据。

2、核心概念

  • 影响实验结果的----实验因素
  • 每一个因素的不同取值(状况)----水平
  • 正交表:每列中,同一个数字(水平),出现的次数相等;任意两列组成的数字对(水平对)出现的次数也是相同的。

3、实现步骤

  • 分析所有对结果有影响的因素。从多个角度和方式进行分析(不要放过文本框、按钮等需求中提及或者没有涉及)
  • 分析每个因素的水平数量。充分利用等价类、边界值(需求中说明和未说明的都要分析)
  • 选择正交表。只有特定的因素数和水平数的组合才有对应的正交表。所有在现实中用到的时候,找最贴近的正交表(正交表的因素数和水平数一般要大于实际的因素数和水平数)

4、正交表
正交表

这三个数字之间没有任何的数学关系

  • n:代表实验次数
  • m:代表水平数
  • k:因素的数量
  • 仅适合用于每一个因素的水平数都相同的正交表



五、功能图法(状态图)

1、使用场合:
软件的状态会根据某些内容、条件、操作的变化而变化

2、目标:
尽可能覆盖软件的状态、状态-条件的组合

3、步骤

  • 列出所有可能的输入事件,以ip N(input)的方式命名:ip N1
  • 定义空闲状态(初始状态)。一般以软件刚启动时打开的界面状态为空闲状态
  • 为空闲状态加操作(只加一次)
  • 为上一步产生的所有新状态加操作(只加一次,并且曾经加过的操作不再重复添加)
  • 循环为所有的新增状态加操作,直到没有新状态产生为止
  • 组合任意的状态,以列表的形式展现,设计和编写测试用例
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值