黑盒测试9种常用方法

文章目录

    • 测试用例
    • 黑盒测试
    • 等价类划分法
    • 边界值分析法(BVA)
    • 判定表法
    • 因果图法
    • 组合覆盖法
    • 正交实验法
    • 对比pairwise和OTDM
    • 因果图、决策表和pairwise选用建议
    • 功能图法(黑白盒混合)
    • 场景设计法
    • 错误推测法

测试用例

  1. 组成
    测试用例 = 输入(测试步骤和测试数据)+输出(期望结果)+ 测试环境(系统环境设置)
  2. 编写时机
    通常在测试设计阶段来写,即在《需求规格说明书》和《测试计划》都已完成之后
  3. 编写标准
    唯一标准:用户需求
  4. 参考资料
    《需求规格说明书》和软件原型。
  5. 作用
    测试过程中的重要参考依据,好的用例被重复使用使得测试过程事半功倍。

黑盒测试

  1. 来由
    任何程序都可以看作是从输入定义域到输出值域的映射,将被测程序看作一个打不开的黑盒,黑盒里面的内容(实现)是完全不知道的,只知道软件要做什么。即不关心结构,只关心输入输出。
  2. 定义
    现代黑盒测试是从一种从软件外部对软件实施的测试,也称基于规格说明的测试。
    黑盒测试是从用户观点出发的测试,其目的是尽可能发现软件的外部行为错误。
  3. 检测内容
    检测软件功能能否按照需求规格说明书的规定正常工作,是否有功能遗漏;
    检测是否有人机交互错误,是否有数据结构和外部数据库访问错误,是否能恰当地接收数据并保持外部信息(如数据库或文件)等的完整性;
    检测行为、性能等特性是否满足要求等;
    检测程序初始化和终止方面的错误等。
  4. 优点
    软件实现发生了变化,测试用例仍然可以使用;
    可以和软件实现同时进行,因此可以压缩项目总的开发时间。

下面介绍黑盒测试常用的9种方法。

等价类划分法

  1. 定义
    根据程序规格说明书把所有可能的输入数据,即程序输入域划分为若干个互不相交的子集,称为等价类,然后从每个等价类中选取少数具有代表性的数据作为测试用例,进行测试。
  2. 等价类
    等价类是某个输入域的子集,在该子集中每个输入数据的作用是等效的
    分为有效等价类和无效等价类
    有效等价类:对于程序的规格说明来说是合理的、有意义的输入数据构成的集合。利用有效等价类可以检验程序是否实现了规格说明中所规定的功能和性能。
    无效等价类:与有效等价类的定义恰巧相反。
    设计测试用例时,要同时考虑这两种等价类。因为软件不仅要能接收合理的数据,也要能经受异常数
    据的考验。经过正反的测试才能确保软件具有更高的可靠性
  3. 进一步理解等价类划分法
    规格说明往往没有定义无效测试用例期望输出应该是什么样的。因此,测试人员需要花费大量时间来定义这些测试用例的期望输出。
    等价分类的目标是把可能的测试用例组合缩减到仍然足以满足软件测试需求为止。选择了不完全测试,就要冒一定的风险,所以必须仔细选择分类。
    测试同一个复杂程序的两个软件测试人员,可能会指定出两组不同的等价区间。只要审查认为足以覆盖测试对象就可以了。
  4. 健壮性BVA测试会产生6n+1个测试用例,多出的是min-与max+

背景:当输入之间有了关联,如:约束关系和组合关系,等价类划分和BVA将不再适用,必须考虑使用一种适合于描述对于多种条件的组合,产生多个相应动作的测试方法(指先因果图后判定表)。

  • 判定表的制定

  • 因果图法

    1. 定义
      借助图形,着重分析输入条件的各种组合,每种组合条件就是“因”,输出的结果就是“果”。
      因果图是一种形式化的图形语言,实质上是使用简化记 表示数字逻辑图,不仅能发现输入、输出中的错误,还能指出程序规范中的不完全性和二义性。

    组合覆盖法

    最常用的是Pair-wise方法,即将众多因素的值两两组合起来而大大减少测试用例组合,该方法经济有效。
    Pair-wise方法基本原理:
    不要测试所有的组合,测试所有的“Pairwise ”即可。(覆盖任意2个因素所有状态的测试用例集合)

    正交实验法

    Orthogonal Test Design Method, OTDM
    正交测试法使用已经构造好了的正交表格来安排试验并进行数据分析。
    正交表的两大优越性,即“均匀分散,整齐可比”。

    黑盒测试9种常用方法
    其中9是实验次数,4是因子的个数,3是因子的水平数(即状态数)。
    试验次数 = m*(n-1)+1 m是因子个数 ,n是水平数。
    步骤
    1. 确定影响功能的因子与状态
    2. 选择一个合适的正交表
    3. 利用正交表构造测试数据集

    对比pairwise和OTDM

    共同点
    两者使用频率最高的均是两两组合,前提也都是基于“缺陷大部分发生在参数两两组合的情况下,三个参数组合导致的缺陷并不多见”。
    两者的父集均是笛卡尔集。
    不同点
    两者采用的筛选方式稍显不同,配对测试选择的是所有的两两组合所构成的测试用例;
    正交表在此基础上做了更进一步的筛选,使得结果更加精炼。
    选择建议
    在因子水平数比较少的情况下,采用配对测试方法。因为测试组合数更加全面一些,当然在某些因子水平数时,两者最后筛选出的结果可能是一致的。
    在因子水平数比较多的情况下,采用正交表测试,因为可以得到更加精炼的测试组合,从而使测试效率得到提升。

    因果图、决策表和pairwise选用建议

    如果程序的功能说明中含有输入条件的组合情况,则一开始就可选用因果图法和判定表法。
    对于配置参数类软件,用正交试验法选择较好的组合方式达到最佳效果。

    功能图法(黑白盒混合)

    功能图法就是使用功能图形式化地表示程序的功能说明,并机械地生成功能图地测试用例。

    功能图的两个组成部分——状态迁移图(state transition diagram STD)和逻辑功能模型(logic function model LFM)。

    STD用于表示输入数据序列以及相应的输出数据,由输入和当前地状态决定输出数据和后续状态。

    LFM用于表示在状态输入条件和输出条件之间的对应关系。LFM只适合于描述静态说明,输出数据仅由输入数据决定。

    后续要用到基本路径覆盖法。

    场景设计法

    多数软件系统都是用事件触发来控制业务流程,事件触发时的情景便形成了场景,场景的不同触发顺序构成了用例。
    特点:测试人员要充分发挥对用户实际业务场景的想象,关心用户做什么,而不是关心产品做什么。
    优点:实用性强,有效,设计出来的用例有价值。
    缺点:可能使用的场景不一定能对事件系列进行全面的分析,设计出来的用例不完整。

    错误推测法

    1. 定义
      测试者根据经验、知识和直觉来发现软件的错误,来推测程序中可能存在的各种错误,从而有针对性地进行测试。
    2. 特点
      没有依据,只能靠测试者自身实力;
    3. 优点
      快速切入体会到程序易用与否;
    4. 缺点
      难以准确知道测试覆盖率。
    5. 地位
      作为辅助方法(不像BVA是必用的黑盒测试方法)
    6. 基本思想
      软件测试的原则5-错误存在集群现象

    声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

    上一篇 2022年10月6日
    下一篇 2022年10月6日

    相关推荐