1. 登录功能等价类与边界值测试用例设计

登录功能等价类与边界值测试用例设计 学习卡片

被测对象与输入域约定

登录表单包含两个输入框:用户名与密码。为便于划分等价类,先固定本节的输入域约定(示例假设,非真实系统规格):

  • 用户名:长度 6–20 个字符,允许字母、数字、下划线,必须以字母开头。
  • 密码:长度 8–16 个字符,必须同时包含字母与数字,允许特殊字符 !@#$%^&*。
  • 两个字段均为必填,不允许首尾空格。

等价类划分的核心是把无限输入压缩为有限类别:每个字段先分有效等价类(应被接受)与无效等价类(应被拒绝并给出提示)。边界值分析则针对每个有序区间,取上点、离点、内点——即边界本身、刚越界一点、边界内侧一点。

等价类与边界值对照表

字段类别编号条件预期结果
用户名有效U16–20 位,字母开头,仅字母/数字/下划线接受
无效U2长度 < 6拒绝:长度不足
无效U3长度 > 20拒绝:长度超限
无效U4含非法字符(空格、中文、@ 等)或非字母开头拒绝:格式非法
密码有效P18–16 位,同时含字母与数字接受
无效P2长度 < 8拒绝:长度不足
无效P3长度 > 16拒绝:长度超限
无效P4纯字母或纯数字(缺一类字符)拒绝:复杂度不足

边界值取值

用户名区间 [6, 20],密码区间 [8, 16]。对每个边界取三个点:

字段下边界下边界内点上边界上边界外点
用户名长度5(无效)6(有效)20(有效)21(无效)
密码长度7(无效)8(有效)16(有效)17(无效)
输入域区间与边界值分布 用户名长度 U2 无效 U1 有效区间 [6, 20] U3 无效 6 20 5 21 密码长度 P2 无效 P1 有效区间 [8, 16] P3 无效 8 16 7 17 有效等价类 无效等价类 有效边界点 无效边界点 注:U4/P4 为格式类无效等价类,不落在长度轴上

测试用例集设计

采用“单缺陷假设”策略:每条用例只让一个字段处于无效等价类,其余字段取有效值,便于定位缺陷来源。用户名有效基准取 user_01(7 位),密码有效基准取 abc12345(8 位)。

用例覆盖类用户名密码预期结果
TC01U1+P1user_01abc12345登录成功
TC02U2user1(5 位)abc12345提示用户名长度不足
TC03U321 位用户名abc12345提示用户名长度超限
TC04U41user_01(数字开头)abc12345提示用户名格式非法
TC05U4user 01(含空格)abc12345提示用户名格式非法
TC06P2user_01abc1234(7 位)提示密码长度不足
TC07P3user_0117 位密码提示密码长度超限
TC08P4user_01abcdefgh(纯字母)提示密码复杂度不足
TC09P4user_0112345678(纯数字)提示密码复杂度不足
TC10空值(空)abc12345提示用户名不能为空
TC11空值user_01(空)提示密码不能为空
TC12边界user_0(6 位)abc12345登录成功(下边界)
TC13边界20 位用户名abc12345登录成功(上边界)
TC14边界user_01abc1234!(8 位含特殊字符)登录成功(下边界)
TC15边界user_0116 位含特殊字符登录成功(上边界)
TC12–TC15 是边界值用例,与等价类用例互补:等价类保证“类”被覆盖,边界值保证“类与类的交界处”被覆盖。两者结合才能发现如“长度判断用了 < 而非 <=”这类典型缺陷。

执行与判读要点

  • 每条用例执行后,记录实际提示文案与预期是否一致;提示文案本身也是断言对象。
  • 若 TC02 与 TC12 结果相同(都拒绝),说明下边界判断错误;若 TC03 与 TC13 结果相同,说明上边界判断错误。
  • TC04、TC05 用于验证格式校验是否在长度校验之前或之后触发,可暴露校验顺序问题。
  • 空值用例 TC10、TC11 应优先于其他无效类执行,避免空值被其他校验规则掩盖。
本节所有长度与字符规则均为教学示例假设。实际项目应以需求规格或接口文档为准,等价类与边界值必须随规格变化重新划分。