“Welcome to perfectming ‘ s testing blog ,Your support is the largest power to my advancement !”

【黑盒】测试用例设计方法之等价类划分

上一篇 / 下一篇  2011-05-26 15:44:37 / 个人分类:Test Case Designing

黑盒测试     
        先介绍一下什么是黑盒测试,黑盒测试也称功能测试或数据驱动测试,它是在已知产品所应具有的功能,通过测试来检测每个功能是否都能正常使用。在测试时把程序看做一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,测试者在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接受输入数据而产生正确的输出信息,并且保持外部信息(如数据库或文件)的完整性。黑盒测试方法主要有等价类划分、边界值分析、因果图、错误推测等,主要用于软件确认测试。
        “黑盒”法着眼于程序外部结构,不考虑程序内部逻辑结构,针对软件界面和软件功能进行测试。“黑盒”法是穷举输入测试,只有把所有可能的输入都作为测试情况使用,才能以这种方法查出程序中的所有错误。实际上测试情况有无穷多个,人们不仅要测试所有合法的输入,而且还要对那些不合法的但是可能的输入进行测试。
等价类划分:
        等价类划分是黑盒测试最常用的方法,使用等价类划分的方法是将输入域划分为若干个区域并从中选出具有代表性的数据进行测试,这样可以避免使用大量的测试数据,也避免了盲目性。
        等价类划分针对程序的输入部分,常用的设计方法是找出输出条件,划分等价类,并进行用例的设计。
        等价类分为有效等价类和无效等价类两种。所谓有效等价类是指用户输入的有效数据,并得到预期的或正常的结果;另一种是无效等价类,无效等价类是指异常的或不符合规定的输入,相应的也会得到异常的输出或提示信息。因此划分等价类的时候要从有效和无效两方面来考虑。一般在设计测试用例时,要是一条用例尽量多的覆盖有效等价类,而无效等价类则要求一对一覆盖。
确定等价类的原则:
        1)如果输入条件规定了取值范围,或者值的个数,则可以确定一个有效等价类和两个无效等价类;
        2)如果输入条件规定了输入值的集合,或者是规定了“必须如何”的条件,这时可以确立一个有效等价类和一个无效等价类;
        3)如果输入条件是一个布尔量,则可以确立一个有效等价类和一个无效等价类;
        4)如果规定了输入数据的一组值,而且程序要对每一个输入值分别进行处理,这时要对每一个规定的输入值确立一个等价类,而对于这组值之外的所有值确立一个等价类;
        5)如果规定了输入数据必须遵守的规则,则可以确立一个有效等件类(即遵守规则的数据)和若干无效等价类(从不同角度违反规则的数据);
        6)如果确知以划分的等价类中的各元素在程序中的处理方式不同,则应进一步划分成更小的等价类;
建立等价类表:
输入条件有效等价类无效等价类
如何选取测试用例:
        1)为每一个等价类规定一个唯一的编号;
        2)设计一个新的测试用例,使其尽可能多的覆盖尚未覆盖的有效等价类;重复这一步骤,知道所有的无效等价类都被覆盖为止;
        3)设计一个新的测试用例,使其仅覆盖一个无效等价类,重复这一步骤,直到所有的无效等价类都被覆盖为止。
黑盒测试-等价类划分举例:
        根据下面给出的规格说明,利用等价类划分的方法,给出足够的测试用例。
        “一个程序读入3个整数,把这三个数值看作一个三角形的3条边的长度值。这个程序要打印出信息,说明这个三角形是不等边的、是等腰的、还是等边的。”
        我们可以设三角形的3条边分别为A,B,C。如果它们能够构成三角形的3条边,必须满足:
        A>0,B>0,C>0,且A+B>C,B+C>A,A+C>B。
        如果是等腰的,还要判断A=B,或B=C,或A=C。
        如果是等边的,则需判断是否A=B,且B=C,且A=C。
划分有效等价类和无效等价类:

设计测试用例:


TAG: 设计 测试用例 等价类划分 黑盒

 

评分:0

我来说两句

日历

« 2024-04-10  
 123456
78910111213
14151617181920
21222324252627
282930    

数据统计

  • 访问量: 20597
  • 日志数: 18
  • 图片数: 1
  • 建立时间: 2011-03-24
  • 更新时间: 2011-07-09

RSS订阅

Open Toolbar