问题1:设计测试用例前,你拿到需求后第一步做什么?
是什么
第一步不是直接写用例,而是需求分析与测试点提取。你需要理解功能逻辑、用户场景、数据流,并识别出“测什么”和“不测什么”。

为什么
如果跳过这一步,用例容易遗漏关键场景(如异常流程)或覆盖冗余(如对每个输入框都测边界值,但忽略了业务核心链路)。面试官想看到你具备从需求到测试点的转化能力。
怎么做
- ►拆解需求:将一句话功能(如“用户登录”)拆成子功能:输入验证、密码加密、会话管理、错误提示。
- ►识别测试类型:功能测试(正常/异常)、UI测试(布局)、安全测试(SQL注入)、兼容性测试(浏览器版本)。
- ►输出测试点清单:例如“输入框为空时点击登录→提示‘账号不能为空’”。
问题2:你如何选择具体的测试用例设计方法?
是什么
常用方法包括等价类划分、边界值分析、因果图/判定表、场景法、正交实验法。面试中需要根据功能特点灵活组合。
为什么
单一方法无法覆盖所有场景。例如边界值适合数值输入,但无法处理“登录后跳转不同页面”这种多条件组合。面试官考察你是否理解方法的适用边界。
怎么做
- ►等价类+边界值:适用于输入框、下拉列表等控件。例如年龄输入(1-120岁),划分有效等价类(1-120)、无效等价类(<1, >120, 非数字),再取边界值(0,1,120,121)。
- ►场景法:适用于业务流程。例如“用户下单”包含:登录→选商品→加购物车→支付→订单状态变更。需覆盖主流程、备选流程(如支付超时)和异常流程(如库存不足)。
- ►判定表:适用于多条件组合。例如“会员折扣”:用户等级(普通/银卡/金卡)和消费金额(<100/≥100)组合出6种折扣结果。
问题3:能否用一个案例串联你设计的用例?
是什么
以“用户注册功能”为例,展示从需求到用例的完整输出。
为什么
面试官不只想听概念,更想看实战落地。一个具体案例能证明你具备“把方法用到业务中”的能力。
怎么做
需求描述:用户输入手机号、密码、验证码完成注册,要求手机号11位且以1开头,密码6-20位含字母和数字,验证码4位数字。
第1步:测试点提取
- ►输入验证:手机号格式、密码强度、验证码有效性
- ►业务逻辑:手机号是否已注册、验证码是否过期
- ►异常处理:网络超时、重复提交、服务器错误
第2步:方法应用
- ►等价类+边界值:手机号(有效:13800138000;无效:空、12位、字母)、密码(有效:Test123;无效:少于6位、纯数字)
- ►场景法:主流程(输入正确信息→注册成功)、备选(验证码错误→重新获取)、异常(手机号已注册→提示“已注册”)
- ►判定表:条件“手机号格式正确”“密码格式正确”“验证码正确”组合出8种结果(仅全正确时成功)
第3步:输出用例示例
第4步:补充非功能测试
- ►性能:100用户并发注册时响应时间<3秒
- ►安全:密码传输是否加密(HTTPS)、验证码是否有图形干扰防止OCR
问题4:如何评估你的用例是否充分?
是什么
用例设计完成后,需要自检覆盖率、可执行性和风险优先级。
为什么
面试官会追问“你如何证明用例够了?”。回答“我用了等价类”太笼统,需要量化标准。
怎么做
- ►覆盖率检查:对照测试点清单,确保每个点至少有一个正向和负向用例。例如手机号验证:正向(11位有效号)、负向(空、超长、特殊字符)。
- ►优先级划分:P0(核心业务,如注册成功)、P1(次要异常,如验证码错误)、P2(边缘情况,如手机号已注销)。
- ►风险矩阵:高概率+高影响(如密码明文存储)必须测,低概率+低影响(如用户名含emoji)可延后。
自测清单:面试前请确认
- ►[ ] 能否在2分钟内说出需求分析的3个关键步骤?
- ►[ ] 能否举一个非数值输入场景(如下拉框)的等价类划分案例?
- ►[ ] 是否知道场景法中“主流程”和“备选流程”的区别?
- ►[ ] 能否用判定表处理“条件>3个”的多组合场景?
- ►[ ] 是否准备了至少2个不同业务(电商、金融、社交)的用例设计案例?
掌握这4步回答框架,你不仅能应对“如何设计测试用例”这道题,还能在后续追问中展示出结构化思维和业务敏感度。面试官更愿意录用“能把方法落地”的候选人,而不是“只会背概念”的理论派。
京公网安备 11010802030320号