测试学习——穷举场景测试用例设计

测试用例编写

目标:

 等价类划分法:

等价划分:在所有测试数据中,具有某种共同特征的数据集合进行划分。

       分类:有效等价(满足需求数据集合)

                 无效等价(不满足需求的数据集合)

      步骤:1.明确需求(长度、类型、规则)

                 2.确定有效无效(参数、说明、有效、无效 )

有效用例能组合就组合

                3.提取数据编写测试用例L:::

使用场景:需要有大量数据测试输入,但无法穷举测试的地方。如页面的输入框类测试。

 注意无效数据中为空情况

 例子二:电话号码合法性

分析

 

 

 

### 如何使用等价类划分法设计测试用例 #### 定义与目的 等价类划分是一种用于减少所需测试数量的技术,同时保持高覆盖率的方法。这种方法基于假设:如果一个测试用例能够检测出错误,则属于同一等价类的其他成员也应能发现相同的缺陷[^1]。 #### 原理阐述 此方法的核心在于识别输入域的有效范围和无效范围,并将其细分为多个子集——即所谓的“等价类”。对于每一个这样的类别,只需选取代表性的样本作为实际执行时的数据即可[^3]。 #### 设计步骤详解 为了有效地利用这一策略,在具体操作上可以遵循如下流程: - **确定有效和无效区间** 对于给定的功能需求文档或规格说明书,仔细审查其中定义的所有可能输入条件,区分哪些是合法合理的(有效),哪些超出了预期界限因而被认为是非法不合理(无效)。这一步骤有助于后续更精准地区分不同类型的等价类[^2]。 - **创建等价分类表** 将上述得到的信息整理成表格形式,每一行对应着一种特定情况下的输入组合;每列则表示单个参数的不同取值情形。这样做不仅便于直观理解各个变量间的关系模式,而且有利于后期维护更新工作[^5]。 - **挑选典型样例** 针对每个已建立起来的等价类,从中选出至少一组具有代表性意义的具体数值来进行实验验证。通常情况下,会选择靠近边界的那些点位,因为它们更容易暴露出潜在的问题所在之处[^4]。 #### 实战演练:以登录功能为例 考虑一个简单的Web应用程序注册页面上的密码字段校验逻辑: - 密码长度应在8至16字符之间; - 至少包含一个小写字母、大写字母以及特殊符号之一。 ##### 输入空间分析 根据以上规则,可得出以下几组不同的等价分区: | 类型 | 描述 | | --- | --- | | 合规 | 符合所有规定的要求 | | 过短 | 总数不足8个字符 | | 超长 | 数量超过16个字符 | | 缺失必要成分 | 不含任何大小写字母或特符 | ##### 构建测试场景 针对上面提到的各种状况分别构建相应的测试实例,比如: ```python test_cases = [ {"input": "ValidPassword!", "expected_result": True}, # 合规 {"input": "short", "expected_result": False}, # 过短 {"input": "too_long_password_which_exceeds_sixteen_characters", "expected_result": False}, # 超长 {"input": "OnlyLowercaselettersnoSpecialCharOrUpper", "expected_result": False} # 缺失必要成分 ] ``` 通过这种方式,既简化了原本复杂庞大的全排列穷举过程,又能在很大程度上保证质量控制的效果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值