首页 > 编程知识 正文

黑盒测试经典例题,七种黑盒测试用例设计方法

时间:2023-05-05 21:00:30 阅读:107941 作者:508

文章目录一、等价类划分法1、等价类划分法2、设计用例二、边界值分析法三、因果图和决策表法3.1因果图设计法3.2决策表四、正交实验设计法1、应用场景2、什么是正交实验法3、设计步骤: 3.1提取功能说明、结构因子--状态表3.2权重生成因子分析表3.3采用正交表进行测试数据集4、设计步骤: 3.1提取功能描述、结构因子-状态表3.2加权筛选、生成因子分析

黑匣子测试是将软件视为有输入和输出的黑匣子,将程序视为从输入域到输出域的映射,只要输入的数据能够输出到预期的结果即可,并了解在程序内部是如何实现的

黑匣子测试是软件测试中常用的测试手段之一,常用的黑匣子测试方法包括等价类划分法、边界值分析法、因果图与决策表法、正交实验设计法等

一、等价类别划分法等价类别划分法是常用的黑匣子测试方法,从海量数据中选择部分数据用于测试,即以尽可能少的测试用例覆盖最多的数据,发现更多的软件缺陷

用等价类分类法测试程序需要分类等价类和设计测试用例两个步骤:

1 .等价类划分为有效等价类和无效等价类,其含义如下:

1 .有效等价类:有效等价类是有效值集合,它们满足程序要求,是合理而有意义的输入数据。 2 .无效等值类:无效等值类是无效值的集合,是不符合程序要求、不合理或无意义的输入数据。 等价类别划分:

1 .当程序要求输入值为区间中的某个值时,可以将输入数据分为一个有效等价类和两个无效等价类。 有效等价类是取指定值的区间,2个无效等价类分别是有效区间两侧的值。 例如,如果程序要求将输入值x的范围设为[1,x100 ],则有效的等价类为1=x=100,而无效的等价类为x1和X100。 2 .如果程序要求输入的值“必须成立”,则可以将输入数据分为有效等价类和无效等价类。 3 .如果程序要求输入数据是一组可能的值,或者输入值需要满足某些条件,则可以将输入数据分为有效等价类和无效等价类。 例如,如果某个程序需要输入数据是以数字开始的字符串,则以数字开始的字符串是有效的等价类,而不是以数字开始的字符串是无效的等价类。 4 .在某个等价类中,每个输入数据的程序处理都不同时,应该把该等价类分成更小的等价类,制作等价表。 2 .设计测试用例并建立等价类后,需要建立等价类表列举所有划分的等价类,设计测试用例。 基于等价类划分法的测试用例的设计顺序如下所示。

1 .确定测试对象,保证非测试对象的准确性。 2 .为每个等价类别制定唯一编号3 .设计有效等价类别的测试用例,尽可能多地覆盖未覆盖的有效等价类别,直到测试用例覆盖所有有效等价类别。 4 .设计无功等值类测试用例,涵盖所有无功等值类。 二、边界值分析法对测试工作来说,发现测量越多越好,程序中的一些错误往往发生在边界处理中。 边界值分析法是一种测试软件输入输出边界的方法,通常用作等价类分类法的补充测试。 边界值分析法在等价类边界上执行软件测试工作,其测试用例均在等价类边界上设计。 在、

例如,如果输入条件并将值范围从1到100,则可以选择5个值作为测试数据: 1、1.1、50、99.9和100。 如果需要加入否定,可以加入0.9,100.1。

边界值分析法作为一种单独的软件测试方法,只通过取边界的值来考虑测试的有效性,与等价类划分法相比运行简单,但缺乏充分性,无法整体测试软件,只能作为等价类划分法的补充测试。

三、因果图和决策表法3.1因果图设计法等值类划分法和边界值分析法主要侧重于输入条件,但没有考虑这些输入之间的关系,如组合、约束等。 如果程序输入之间存在作用关系,等价类分解法和边界值分析法就很难描述这些输入之间的关系,测试效果无法保证。 需要一种描述多个输入之间约束关系的新方法。 这就是因果图法。

1、因果图符号的关系

以下是符号的具体说明:

原因结果

原因原因

结果-结果

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

)1)确定软件规格(需求)的原因和结果

)2)确定原因与结果的逻辑关系

)3)确定因果图的各约束(constraints )

)4)绘制因果图,转化为决策表

)5)根据决策表设计测试用例

3.2在决策表的实际测试中,由于输入条件多,再加上存在各种输入和输出的相互作用关系,因果图就容易变得复杂混乱。 为了避免这种情况,常常用决策表法代替因果图法。 决策表也叫判定表,其本质是逻辑表。

实例分析

产品说明书:有处理单价1元5角的盒装饮料的自动售货机软件。 投入1元5角硬币,按“可乐”、“雪碧”或“红茶”按钮,就会发送相应的饮料。 投入2元硬币的情况下,送出饮料的同时返还5角硬币。

)1)确定需求中的原因和结果

)2)确定原因与结果的逻辑关系

C-1和C-2需要中间结果Cm1,C-3、C-4、C-5需要中间结果Cm2。

(3)确定因果图中的约束

C1 与 C2 是或的关系, C3、C4、C5 是或的关系。

(4)画出因果图并转化为决策表

决策表

将原因C1、C2、C3、C4、C5按二进制由小到大分别取值,并分析中间结果的成立与否,进而得出下面的简化版(即中间结果Cm1、Cm2成立的情况)

简化版

四.正交实验设计法 1、应用场景

  利用因果图来设计测试用例时,作为输入条件的原因与输出结果之间的因果关系,有时很难从软件需求规格说明中得到。因果图而得到的测试用例数目多的惊人,可利用正交实验设计。

2、什么是正交实验法

  正交实验设计方法:依据Galois理论,从大量的(实验)数据(测试例)中挑选适量的,有代表性的点(例)。类似的方法有:聚类分析方法,因子方法方法等.
  节省测试工作工时;可控制生成的测试用例数量;测试用例具有一定的覆盖率。

3、设计步骤: 3.1 提取功能说明,构造因子–状态表

  把影响实验指标的条件称为因子.而影响实验因子的条件叫因子的状态.分解说明书中的功能为基本的功能。找出影响其功能实现的操作对象和外部因素,把他们当作因子,而把各个因子的取值当作状态要求.

3.2 加权筛选,生成因素分析表

  对因子与状态的选择可按其重要程度分别加权.可根据各个因子及状态的作用大小,出现频率的大小以及测试的需要,确定权值的大小。

3.3 利用正交表构造测试数据集

  正交表的推导依据Galois理论(这里省略,需要时可查数理统计方面的教材)。

4、公式

  单一水平正交表Ln(mk),k代表最多可安排影响指标因素的个数或正交表的列数,m表示每个因素水平数,且有n=k*(m-1)+1。

  对于混合水平正交表Ln(m1k1m2k2…mxkx),用n=k1*(m1-1)+k2*(m2-1)+…kx*(mx-1)+1公式计算

  如果不存在试验次数等于n的正交表,我们就得找出满足试验次数大于n的正交表并且水平数大于等于max(m1,m2,m3,…)、因素数大于等于(k1+k2+k3+…)。比如22

  每列中不同数字出现的次数相等。任意2列其横向组成的数字对中,每种数字对出现的次数相等。

5、示例

   根据“性别”=“男,女”进行查询 根据“班级”=“1班,2班”查询 根据“成绩”=“及格,不及格”查询。

  1. 传统设计:共2* 2* 2=8个用例

  2. 用正交:共3*(2-1)+1=4个

序号性别班级成绩1女一班及格2女二班不及格3男一班不及格4男二班及格

  3. 因素数和水平数越大越能体现用正交表的好处。

6、正交试验法的优缺点 优点:“均匀分散,整齐可比”的特点。通过使用正交试验法减少了测试用例,工时与费用,提高测试用例的有效性。是一种高效率、快速、经济的实验设计方法。缺点:对每个状态点同等对待,重点不突出,容易造成在用户不常用的功能或场景中,花费不少时间进行测试设计与执行,而在重要路径的使用上反而没有重点测试。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。