等价类和边界值的概念

一、等价类

1.什么是等价类

将所有可能输入数据的数据域进行划分,分成若干子集,再从其中选出少数具有代表性的的是用例

测试程序,该方法是一种常用的黑盒测试方法。

2.等价类的划分

有效等价类


是指对于程序的规格说明来说是合理的、有意义的输入数据构成的集合。利用有效等价类可检验程

序是否实现了规格说明中所规定的功能和性能。

无效等价类

与有效等价类的定义恰巧相反。无效等价类指对程序的规格说明是不合理的或无意义的输入数据所

构成的集合。对于具体的问题,无效等价类至少应有一个,也可能有多个。

主要解决的问题就是划分等价类可以将测试集合科学的从无穷大减少到有限小,让测试工作从穷举

测试中解放出来,大大减少测试用例数量,提升测试效率。

3.等价类划分的步骤

1)需求分析

2)划分等价类

        1)有效等价类

        2)无效等价类

                - 规则(需求本身出发)

                - 长度需求

                - 类型规定

                - 是否为空(必填项选择)

                - 是否可重复输入

3)设计用例

二、边界值

1.边界值法概念及意义

概念:

有效数据和无效数据的分界点,往往作为程序员编写程序的判断点,是程序员容易犯错的地方,也是测试人员重点测试的内容。我们把这些分界点的值找到,并进行测试的方法,称为边界值法。

意义:

测试经验表明错误往往会发生在输入或输出范围的边界上,所以边界值法是对这些边界进行测试,是对划分等价类法的一种

2.边界值的概念

- 上点:边界上的点(符合条件的边界点)

        - 内点:边界内的点

        - 离点:离边界最近的左右两点

3.两位数加法计算器案例

需求:一个可以计算两位数内的加法计算器

                                                                        如图:

两位数取值范围数学区间表示上点内点离点
x >= -99,y <= 99[ -99 , 99 ]-99,9920-100,-98,98,100
x > -99, y <= 99( -99 , 99 ] [ -98 , 99 ]-98,9910-99,-97,98,100
x >= -99 , y < 99[ -99 , 99 ) [ -98 , 98 ]-99,980-100,-98,97,99
x > -99 , y < 99 ( -99 , 99 ) [ -98 , 98 ]-98-985-99,-97,97,99

4.设计测试用例的步骤与边界值法应用场景

设计测试用例的步骤

1.需求分析

        2.划分等价类

        3.确定边界

                - 上点

                        - 内点

                        - 离点

        4.设计测试用例

边界值法应用场景:

在等价类的基础上针对有边界范围的测试数据输入的地方

确定测试条件时,明显存在( >, <, >=, <= )等的分析中

典型代表:有边界范围的输入框类测试

<think>嗯,用户问的是等价类边界值的区别,这两个都是测试中的黑盒测试技术。首先我得回忆一下这两个概念的基本定义应用场景。等价类划分是将输入数据划分为若干子集,每个子集中的数据在测试中视为等效的,这样可以用少量测试用例覆盖更多情况。而边界值分析则是专注于这些子集的边界,因为边界附近往往更容易出现错误。 然后我需要比较它们的区别。等价类主要关注有效无效的输入,而边界值则是在等价类的基础上,特别测试边界点。例如,如果输入范围是1到100,等价类会分成有效(1-100)无效(小于1或大于100),而边界值会测试0、1、100、101这些边界点。 接着要考虑它们的用途。等价类减少用例数量,边界值提高错误发现率。可能还要提到它们通常一起使用,因为互补。然后给出具体的例子,比如年龄输入的例子,这样用户更容易理解。 最后要确保回答结构正确,先回答区别,再解释,然后给出代码示例。代码部分可能需要用Python的unittest框架来演示。比如写一个测试年龄验证的函数,分别用等价类边界值设计测试用例。 检查是否有遗漏,比如等价类的划分原则,边界值的三种情况(上点、离点)。可能还要说明等价类包括有效无效,而边界值通常测试有效边界的上下无效值。例如,对于1-100的边界,测试0、1、2、99、100、101这些点。 最后,相关的问题要围绕这两个技术,比如它们的定义、应用场景、优缺点,如何结合使用,以及是否有其他补充技术。确保问题符合用户提到的格式,用数字列表,四个问题。</think><< 等价类边界值分析是两种常用的黑盒测试技术,它们的核心区别如下: 1. **定义差异**: - 等价类:将输入域划分为若干互不相交的子集(有效/无效),每个子集的元素具有相同的测试行为。 - 边界值:专注于测试输入域的边界条件(如最小值、最大值、刚好超出边界值等)。 2. **测试重点**: - 等价类关注数据范围的"代表性"取值(如有效类取中间值,无效类取极端值) - 边界值聚焦"边界点"及其邻域(如0/1边界、最大/最小值±1) 3. **用例数量**: - 等价类通常每个子集选取1-2个测试用例 - 边界值每个边界需要3个测试点(边界本身及两侧) 4. **错误发现能力**: - 等价类适合发现逻辑处理错误 - 边界值更擅长捕捉数值处理错误 **示例代码**(用户注册年龄验证): ```python def validate_age(age): """年龄验证函数(有效范围:18-65)""" if 18 <= age <= 65: return "Valid" return "Invalid" # 等价类测试用例 equivalence_cases = [ (17, "Invalid"), # 无效下界 (20, "Valid"), # 有效类典型值 (66, "Invalid") # 无效上界 ] # 边界值测试用例 boundary_cases = [ (17, "Invalid"), # 下边界-1 (18, "Valid"), # 下边界 (19, "Valid"), # 下边界+1 (64, "Valid"), # 上边界-1 (65, "Valid"), # 上边界 (66, "Invalid") # 上边界+1 ] ``` **实际应用场景**: - 等价类:测试用户名格式(有效字符组合/特殊字符/超长字符) - 边界值:测试文件上传大小限制(如最大支持10MB时测试9.99MB/10MB/10.01MB) >>
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值