常见黑盒测试方法【转】

1.常见黑盒测试用例设计方法

等价类划分法、边界值分析法、因果图法、状态迁移法、断定表法、流程分析法、正交试验法、错误猜想法、输入/输出域测试法、异常分析法、工具

2.等价类划分法

  概念:某个输入域的集合,在这个集合中每一个输入条件都是等效的。性能

 原则:测试

A.规定了取值范围或值的个数,则可肯定一个有效等价类和两个无效等价类spa

B.规定了输入值的集合,或是规定了必须如何的条件,则可肯定一个有效等价类和一个无效等价类设计

C.布尔量,则可肯定一个有效等价类和一个无效等价类游戏

D.输入数据的一组值假定N个,而且程序要对每个输入值分别处理,则可肯定N个有效等价类和一个无效等价类事件

E.输入数据必须遵照什么的状况下,则可肯定一个有效等价类和若干个无效等价类ci

F.已划好了等价类,各元素在程序处理中的方式不一样,则应该进一步的划分table

步骤:基础

  1. 划分等价类
  2. 为有效等价类设计测试用例
  3. 为每个无效等价类至少设计一个测试用例

3.边界值分析法

  边界值使用条件:

  1. 输入条件明确了一个值的取值范围,或是规定了值的个数
  2. 输入条件明确了一个有序集合      

  边值点定义:上点、离点、内点

        原则:

  1. 输出条件规定了取值范围或个数,则应该选边界内或边界附近的值
  2. 输出条件规定了值的个数,则最大值、最小值、最大值+一、最小值-一、
  3. 输出条件是一个有序的集合,则集合的第一个和最后一个
  4. 若使用了内部数据,则应选择这个内部数据的边界值

步骤:

  1. 分析输入参数的类型(从SRS中)
  2. 等价类划分(可选)
  3. 肯定边界
  4. 相关性分析(可选)
  5. 造成测试项

4.等价类+边界值

  适用范围:输入与输入之间、输出与输出之间各项无牵制关系的状况。

例如:用户注册

适用的测试类型:功能测试、性能测试、GUI测试、配置测试等

5.断定表法

概念:是分析和表达多逻辑条件下执行不一样操做的状况的工具。

应用:

  1. 基于断定表的测试是最为严格、最具备逻辑性的
  2. 针对不一样逻辑条件的组合值

组成:条件桩、条件项、动做桩、动做项

步骤:

  1. 肯定规则的个数
  2. 列出全部的条件项桩和动做桩
  3. 填入条件项
  4. 填入动做项,获得初始决策表
  5. 简化决策表,合并类似规则(可选)
  6. 将每条规则转化为用例

优势:能把复杂的问题按各类可能的状况一一列举出不,简明而易于理解,可避免遗漏。

缺点:合并存在漏测。

适用范围:

  1. 规格说明以断定表的形式给出,或很容易转换成断定表
  2. 条件、规则的排列顺序不影响执行结果
  3. 每条规则都相对独立
  4. 一条规则能够转化成一条或多条用例,规则的用例数取决于转化的条件

6.因果图法

是把规格转化为断定表的系统化方法。它适合检查输入条件的各类组合状况。

步骤:  1.把大的系统规格划分解成能够测试的规格片断(可选)

      2.找出哪些是缘由,哪些是结果

3.画出因果图

4.将因果图转换为断定表

5.简化断定表(可选)

6.生成测试用例

优势:

  1. 等价类中多个输入条件组合起来出错的状况被忽略
  2. 设计多个输入条件组合用例
  3. 能指出程序规格说明描述中存在什么问题

缺点:

  1. 输入条件与输出结果的因果关系,有时难以从SRS中获得
  2. 即便获得了因果关系,也会由于因果关系复杂致使用例数目及其庞大

条件与结果:恒等、非、或、与

  1. 恒等关系:当输入项发生,会产生对应输出,当输入项不发生,不会产生对应输出
  2. 非关系:与恒等关系相反(误区:若是前者不发生,则发生后者,前者发生,不发生后者)
  3. 或关系:多个输入条件中,只要有一个发生,则会产生对应输出
  4. 与关系:多个输入条件中,只有全部输入项发生时,才会产生对应输出

条件与条件:异、惟1、要求、或

  1. 异:最多一个输入条件发生
  2. 或:至少一个输入条件发生
  3. 惟一:全部输入中有且仅有一个发生

要求:只要其中一个输入发生,其余输入也会发生(误区:为何充值和充值成功不是这个,由于他们不是同属输入条件,而是由前后条件,没什么关系)

7.流程分析法

这是从白盒测试中路径覆盖分析法中推广到黑盒测试中来的测试分析方法。

步骤:

  1. 画出业务流程图
  2. 定义状态节点和条件分支
  3. 肯定测试路径
  4. 构造测试用例

总结:重点在测试流程,流程测试没有问题并不能说明系统功能就没有问题

8.状态迁移图法

  1. 状态机的测试主要关注在测试状态转移的正确性上面。
  2. 用这种方法能够设计逆向的测试用例,如状态和事件的非法组合。

概念:状态迁移法其实是测试了各类状态的转换,这些状态转换的测试在实际工做中是很容易遗漏的,只要将这些状态的转换测试到,是否是采用状态迁移法并不重要,由于状态迁移图只不过是给出一种将多个状态的转换串起来进行测试的思路

步骤:

1.画出状态迁移图

2.列出状态-事件表

3.画出状态转换树(列出每一个状态,画出全部从这个状态出发的状态)

4.从状态转换树推导出测试路径

5.根据测试路径编写合法测试用例

6.编写非法测试用例

9.正交试验法

概念:是从大量和试验点中挑出适量的、有表明性的点,应用迦罗瓦理论导出的“正交表”,合理的安排试验的一种科学的试验设计方法

相关概念:指标、因子、因子的状态

步骤:

  1. 构造因子状态表
  2. 选择正交表(当因子状态数没有时,选择因子+1,去掉多的列)
  3. 对号入座
  4. 合并
  5. 映射
  6. 写用例

总结:不考虑实际取值的意义,故删除无效的组合,补充漏掉的常见组合。

10.输入域测试法

只须要在使用完等价类、边界值的基础上再考虑特殊值和长时间输入

11.输出域覆盖法

指望达到输出或等价类覆盖

12.异常分析法

容错能力、故障恢复能力

13.错误猜想法

根据经验猜测。只能做为测试设计的补充,而不能单独用来设计测试用例。

14.用例设计方法总结

方法名称

特色

不足

测试类型

系统类型

备注

等价类,边界值

分类、覆盖

不考虑组合

全部类型

全部系统

须要关注数据背后的信息

断定表因果图

全排列组合、人工化简

比较繁琐

功能测试

控制系统、游戏

用于测试比较复杂的处理过程

正交试验

两两组合、自动选取

不关心组合的实际意义

功能测试、配置测试

全部系统

关键是正交表的选取

状态迁移

测试修改

 

功能测试

手机、MP3

编辑修改功能也可采用

流程分析

测试流程

 

功能测试、安装测试

金融系统、物流系统、电子 商务系统

业务流程复杂的系统适用,只检查流程,不保证单功能正确

相关文章
相关标签/搜索