一、基础设计方法
1. 等价类划分法
原理:将输入数据划分为有效和无效等价类,每个类选取代表值测试。

应用场景:适用于输入数据范围明确的场景(如年龄、金额字段)。
案例:测试输入-99~99的整数时,有效等价类为[-99,99],无效类包括小数、非数字等。
2. 边界值分析法
原理:针对数据边界及相邻点(如最小值、最大值、±1值)重点测试。
技巧:如日期字段需测试闰年2月29日、跨月操作等边界场景。
3. 因果图与判定表法
原理:通过分析输入条件间的逻辑关系,生成覆盖所有组合的用例。
应用:适用于多条件联动场景(如登录需同时验证账号、密码、验证码)。
4. 正交实验法
原理:利用正交表减少测试组合数量,覆盖关键参数交互。
案例:电商支付模块测试中,组合支付金额、网络状态、系统时间等参数。
5. 场景法
原理:模拟用户实际业务流程(基本流、备选流、异常流)。
示例:购物车功能需覆盖添加商品→修改数量→结算→支付成功/失败的全流程。
二、进阶设计策略
1. 错误推测法
原理:基于经验预判易错点(如空值、超长输入、重复提交)。
案例:测试文件上传功能时,设计超大文件、非法格式、断网重传等异常场景。
2. 状态迁移法
原理:针对状态机系统(如订单状态),覆盖所有状态转换路径。
示例:订单从"待支付"→"已取消"→"重新支付"→"已完成"的闭环测试。
3. 探索性测试
原则:结合随机测试与系统化探索,发现非预期缺陷。
技巧:模拟新手用户随机操作,验证系统容错性。
三、用例编写规范
1. 核心要素
| 要素 | 说明 |
|---|---|
| 唯一编号 | 按模块-功能-序列号规则命名(如TC_USER_LOGIN_001) |
| 前置条件 | 明确环境要求(如数据库版本、网络配置) |
| 测试步骤 | 原子化操作(如"输入密码"需细化到字段定位和输入方式) |
| 预期结果 | 量化指标(如响应时间≤2s)而非笼统描述 |
2. 质量保障原则
全面性:覆盖功能、界面、性能、安全等多维度
(示例:水杯测试需验证材质安全性、高温承压、易清洁性)
可复用性:参数化输入数据,适应迭代需求
独立性:单个用例不依赖其他用例执行结果
四、行业实践参考
1. 微软质量报告启示
通过正交法设计的用例可提前拦截78%线上缺陷。
核心功能用例需标记为P0级,回归测试中优先执行。
2. 大型项目经验
使用XMind梳理测试点→Python脚本转Excel→导入禅道管理。
定期清理过期用例(如每季度淘汰20%低优先级用例)。
五、工具与模板
1. 编写工具
思维导图:FreeMind/XMind用于快速梳理测试场景
管理平台:禅道、TestRail支持用例版本控制与团队协作
2. 模板示例
```markdown
[TC_支付结果_网络超时]
前置条件:用户余额充足,订单状态为"待支付
测试步骤:
1. 模拟支付请求发送后断网
2. 等待15分钟恢复网络
3. 检查订单状态和支付通知
预期结果:
订单状态变为"支付失败"
支付平台显示"交易超时"
用户收到短信提醒
```
通过系统化应用上述方法,可显著提升测试覆盖率(建议≥95%),同时降低回归测试成本。实际工作中需根据项目特性灵活组合不同方法,并持续优化用例库。
