等价类划分法

本文介绍了等价类划分法在软件测试中的重要性,区分了有效等价类(满足需求的输入)和无效等价类(异常情况处理),并列举了五种划分原则和测试用例设计步骤。
摘要由CSDN通过智能技术生成

        等价类划分法是最常用的黑盒功能测试方法之一,根据程序对数据的要求,把程序的输入域划分成若干个部分,列出哪些数据是有效的,哪些数据是无效的,从每个部分中选取少数代表性数据作为测试用例的数据。

        软件不能只接收合理有效的数据,也要具有处理异常数据的功能,这样测试才能确保软件具有更高的可靠性。因此,在等价类划分的过程中,不但要考虑有效等价类,也要考虑无效等价类。 

        有效等价类是指对软件规格说明来说,合理、有意义的输入数据等构成的集合,利用有效等价类可以检验程序是否满足需求规格说明书所规定的功能和性能。只考虑有效等价类的测试称为“标准等价类测试”。无效等价类是指不满足程序输入要求或者无效的输入数据所构成的集合,利用无效等价类可以检验程序异常情况的处理。不止考虑了“有效等价类”,还考虑了“无效等价类”的测试被称为“健壮性等价类测试”。

        使用等价类划分法设计测试用例,首先必须分析需求规格说明书,然后列出有效等价类和无效等价类。以下是划分等价类的几个原则: 

        1.如果程序规定了输入域的取值范围,则可以确定一个有效等价类和 2 个无效等价类

例如:程序要求输入的数值是 50 到 100,那么一个有效等价类就是 50~100,而 2 个无效等价类就是小于 50,大于 100 的区域数据。 

        2.如果程序规定了输入值的集合,不是一个范围,则可以确定一个有效等价类和一个无效等价类

例如:程序要进行平方根函数的运算,那么大于等于 0 的数为有效等价类,而小于 0 的数为无效等价类。 

        3.如果程序规定了输入数据的一组值,并且程序要对每一个输入值分别进行处理,则可以每一个值确定一个有效等价类,然后再选择一个无效等价类

例如:规定某个输入条件 x 的取值只能为{1、2、3、4、5}中的某一个,那么有效等价类就是 x 等于这几个数,而无效等价类则为 x 不等于这几个数。 

        4.如果程序规定了输入数据必须遵守的规则,则可以确定一个有效等价类和若干个无效等价类

例如:程序中某个输入条件规定必须为 5 位数字,则可划分一个有效等价类为 5 位数字,3 个无效等价类为:位数少于 5、位数多于 5、5 位中含有非数字字符。 

        5.如果已知的等价类中各个元素在程序中的处理方式不同,则应将该等价类进一步划分成更小的等价类。使用等价类划分法设计测试用例的步骤如下:

        (1)分析程序的规格说明,列出有效等价类和无效等价类;列出等价类表,并对每个等价类规定唯一的编号,如下表所示。当然也可以不是表格形式,采用文字描述的形式。

输入条件

有效等价类

编号

无效等价类

编号

……

……

……

……

……

……

        (2)一一列出输入条件中可能的组合输入情况。

        (3)选取合适的数据,编写测试用例。

  • 11
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
黑盒测试是一种软件测试方法,它关注的是软件的输入和输出,而不考虑其内部实现细节。等价类划分法是黑盒测试中的一种策略,用于设计测试用例,主要目的是确保程序对所有可能的输入值产生的行为都是正确的。这种方法将输入数据划分为不同的类别(等价类),然后仅需选取每个类别的代表进行测试,就可以覆盖到大部分或全部的输入情况。 等价类划分法主要有三种类型: 1. **有效等价类(Positive Equivalent Class)**:这些是最期望的输入,它们会产生预期的输出结果。对于数值型数据,它们可能包括所有满足条件的值;对于布尔型,可能是真(True)或者期望的行为。 2. **无效等价类(Negative Equivalent Class)**:这些是不期望的输入,目的是找出程序的边界条件和错误处理。它们通常包含超出预期范围、非法格式或空值的数据。 3. **边界等价类(Boundary Equivalent Class)**:当输入值在有效域的边缘时,这些属于边界情况。例如,一个长度为0的字符串、最大和最小的整数等。 设计测试用例时,你需要选择每个等价类中的一个代表进行测试,并且可能还要从边界等价类中挑选测试用例,因为这些地方往往隐藏着潜在的bug。执行测试后,如果在一个类的测试用例上发现问题,就需要检查整个类的所有实例,因为它们应该是具有相同行为的。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值