【每日一题】定长字段的边界值到底该取几个点(附参考答案)

题目:某注册表单「手机号」输入框要求:必须 11 位纯数字,且首位固定为 1。用等价类划分 + 边界值设计测试用例,下列哪种做法最合理?

A. 只覆盖 10 位、11 位、12 位三种长度即可
B. 长度维度取 10 / 11 / 12(有效边界只有 11,左右各取一点),再叠加取值类型:首位非 1(如 2、9)、含字母或空格、全角数字、首尾空格、空值与超长粘贴
C. 首位为 1 的 11 位号码随机取 10 条,样本量够就行
D. 只需 1 条正向用例,异常输入由前端拦截,不用测

难度:初级
题型:笔试(单选)

:point_right:参考答案/答题要点:

B。

  • A 只做了长度维度,漏了「首位」「字符类型」这两个等价类;边界值不是只测长度。
  • C 是无效随机,命中不了边界,等价类内部取值是冗余的。
  • D 错在默认前端可信,接口/抓包改包必然绕过前端,属于典型的测试左移意识缺失。
  • 补充加分:定长字段没有「有效上界/下界」,只有 11 这一个有效值,所以有效边界取 11,无效边界取 10 和 12;若字段还和数据库长度绑定,可再加 1 位、超长(如 255+)验证截断。