黑盒--测试用例设计方法

来源:互联网 发布:高仿手表淘宝店 编辑:程序博客网 时间:2024/04/29 01:44

用例设计方法

 

         -----黑盒测试用例设计方法包括

  • 等价类划分法
  • 边界值分析法
  • 因果图法
  • 判定表驱动法
  • 正交试验设计法
  • 场景法
  • 状态图法
  • 错误推测法

一、等价类划分

           等价类划分属于典型的功能测试方法,根据程序对数据的要求,把程序的输入域划分成若干个部分,区分出哪些数据有有效的,哪些数据是无效的,从每个部分中取少数代表性数据作为测试用例。这样,每一类的代表性数据中的作用都等价与这类中的其他值。

   等价类划分有两种不同的情况:有效等价类和无效等价类。

         1. 有效等价类:对程序规格有意义,合理的输入数据集合。程序接收到有效等价类数据,可以正确执行计算。

         2. 无效等价类:对程序规模无意义,不合理的输入数据集合,程序接收到无效等价类数据。应该给出错误提示,或者不让用户输入。

 

 

二、边界值

   边界值分析方法是对等价类划分方法的补充。测试工作经验告诉我,大量的错误是发生在输入或输出范围的边界上,而不是发生在输入输出范围的内部.因此针对各种边界情况设计测试用例,可以查出更多的错误.
    使用边界值分析方法设计测试用例,首先应确定边界情况.通常输入和输出等价类的边界,就是应着重测试的边界情况.应当选取正好等于,刚刚大于或刚刚小于边界的值作为测试数据,而不是选取等价类中的典型值或任意值作为测试数据.


总结:边界值一般和等价类方法一起应用,找到有效无效数据的分界点(最大值和最小值)及其两边的点进行测试,形成一套完整的测试方案。

 

三、因果图

        在一个功能模块或一个界面中,往往会有多个控件,这些控件一般会有一定的制约关系或者组合关系,并且输出依赖于输入的条件。如果只是单独去测每个控件,往往使测试有很多冗余数据。同时又会造成测试的不全面。遗漏这些输入的组合及输出对输入的依赖关系。

1应用场合

         在一个界面中,有多个控件,测试的时候要考虑控件的组合关系,不同的空间组合会产生不同的输出结果的组合。为了弄清楚什么样的输入组合会产生什么样的输出组合,使用因果图法。

2.因果图的核心

 因---原因、输入条件;

 果---结果、输出结果。

 使用图形的方式,分析软件输入和输出的对应关系。

3.图形符号

a.基本图形,表示输入和输出的对应关系:

 *恒等

 *

 *或

 *非

 

b.约束(限制条件)图形。约束关系:要么单独限制输入;要么单独限制输出。

 因果图中的约束条件:

 ①互斥。

 *表示a.b.c三个原因不会同时成立,最多有一个可能成立。

 *a.b.c不同时为1,即a.b.c中至多只有一个。

 

 ②包含

 *表示a.b.c3个原因至少有一个必须成立。

 *a.b.c至少有一个1,即a.b.c中不能同时为0.

 

 ③唯一

 *表示a.b.c中必须有一个成立,且仅有一个成立。

 

 ④要求

 *表示当a出现,b必须也出现。

 *a=1,则b必须为1,即不可能a=1b=0

 

 ⑤屏蔽

 *a=1,则b必须为0,而当a0时,b的值不定。

 

使用因果图法设计测试用例基本步骤:

1.找出所有的输入条件;

2.明确所有的输入结果;

3.明确所有条件之间的制约关系以及组合关系

4.明确所有输出之间的制约关系以及组合关系

5.找出什么样的输入条件组合会产生哪种输出结果。

 

四、判定表

       画因果图只是一种辅助工具,通过分析最终得到判定表,再通过判定表编写测试用列。但有时候画因果图非常麻烦,影响测试效率,所以在应用熟练之后,可以直接写判定表,进而编写测试用例。

       判定表方法就是因果图法的简化,步骤完全一样,省略画图过程。

 

五、正交排列法

   有时候,可能因为大量的参数的组合而引起测试用例数量上的激增,同时,这些测试用例并没有明显的优先级上的差距,而测试人员又无法完成这么多数量的测试,就可以通过正交表来进行缩减一些用例,从而达到尽量少的用例覆盖尽量大的范围的可能性。就是使用已经造好了的正交表格来安排试验并进行数据分析的一种方法,目的是用最少的测试用例达到最高的测试覆盖率。

 

六、场景法

   指根据用户场景来模拟用户的操作步骤,这个比较类似因果图,但是可能执行的深度和可行性更好。

   

   软件几乎都是用事件触发来控制流程的,事件触发的情景
基本流和备选流基本流和备选流
便形成了场景,而同一事件不同的触发顺序和处理结果就形成事件流。这种在软件设计方面的思想也可以引入到软件测试中,可以比较生动地描绘出事件触发时的情景,有利于测试设计者设计测试用例,同时使测试用例更容易理解和执行。
基本流和备选流:如下图所示,图中经过用例的每条路径都用基本流和备选流来表示,直黑线表示基本流,是经过用例的最简单的路径。备选流用不同的色彩表示,一个备选流可能从基本流开始,在某个特定条件下执行,然后重新加入基本流中(如备选流1和3);也可能起源于另一个备选流(如备选流2),或者终止用例而不再重新加入到某个流(如备选流2和4)。

  

七、状态转换图(实际工作中用的少)

----------------------省略-----待完善中------睡觉睡觉睡觉-----------------------

八、错误推测法

错误推测法是基于经验和直觉推测程序中所有可能存在的各种错误,从而有针对性的设计测试用例的方法.
错误推测方法的基本思想: 列举出程序中所有可能有的错误和容易发生错误的特殊情况,根据他们选择测试用例。 例如,在单元测试时曾列出的许多在模块中常见的错误. 以前产品测试中曾经发现的错误等,这些就是经验的总结。还有,输入数据和输出数据为0的情况. 输入表格为空格或输入表格只有一行. 这些都是容易发生错误的情况。可选择这些情况下的例子作为测试用例。
(一句话,靠经验!!!再见