「这个项目要写多少测试用例?」是软件验收测试报价的关键问题——直接影响测试周期、价格和质量保证程度。本文给出一份可操作的用例数量估算方法 + 用例库设计原则。
用例数量估算公式
基于 200+ 验收测试项目经验,总用例数 N 的估算:
N = (功能点数 × 3-5) + (接口数 × 2-4) + (性能场景数 × 5-10) + (兼容机型数 × 2-3) + 基础安全用例(20-50)
各项含义
- 功能点数——按需求规格说明书中的功能模块拆分(不是简单数页面)
- 接口数——对外开放或对内调用的 API 数量
- 性能场景数——常规通常 3-8 个场景(高并发、长时间运行、大数据量等)
- 兼容机型数——按合同要求覆盖的浏览器 / OS / 设备组合
- 基础安全用例——OWASP Top 10 + 身份认证 + 数据加密标准用例
典型规模 vs 用例数参考
| 项目规模 | 代码量 | 功能模块 | 用例数 | 周期 |
|---|---|---|---|---|
| 小型 | <5 万行 | 10-30 个 | 100-300 条 | 5-10 工作日 |
| 中型 | 5-50 万行 | 30-100 个 | 300-800 条 | 10-20 工作日 |
| 大型 | >50 万行 | 100+ 个 | 800-2000+ 条 | 20-40 工作日 |
9 维度用例覆盖率参考
按 GB/T 25000.51-2016 9 维度,用例分布参考:
| 维度 | 权重 | 典型用例 |
|---|---|---|
| 功能性 | 40-50% | 业务流程、输入校验、异常处理 |
| 性能效率 | 10-15% | 响应时间、吞吐量、并发、资源占用 |
| 兼容性 | 5-10% | 浏览器、机型、OS、第三方对接 |
| 可靠性 | 5-10% | 长时间运行、内存泄漏、容错恢复 |
| 信息安全 | 10-15% | OWASP Top 10、身份认证、加密 |
| 易用性 | 3-5% | UI 一致性、操作友好度 |
| 可维护性 | 3-5% | 日志、配置、版本管理 |
| 可移植性 | 2-3% | 部署、迁移、跨平台 |
| 智能性 (新增) | 2-5% | AI 准确率、幻觉率、合规性 |
用例库设计 5 大原则
原则 1:每条用例对应一个明确目的
差用例:「测试登录功能」(太宽泛,无法判定通过/不通过)
好用例:「用户名包含中文 + 邮箱格式时能否登录成功 + 返回 JWT 是否有效」(具体、可执行、可判定)
原则 2:用例 = 前置条件 + 测试步骤 + 预期结果
每条用例必须包含:
- 前置条件(系统状态、用户角色、数据准备)
- 测试步骤(编号步骤,1.x、2.x)
- 预期结果(具体、可观测)
- 实际结果(执行时填写)
- 判定(通过 / 不通过 / 阻塞)
原则 3:按业务流程分组,不按页面分组
常见错误:按页面分组(登录页、首页、详情页…)
正确做法:按业务流程分组(用户注册流程、订单创建流程、退款流程…)—— 这样能覆盖跨页面的端到端场景。
原则 4:分级评估(致命 / 严重 / 一般 / 提示)
用例可以按「如果失败影响多大」分级:
- 致命——业务完全不可用(如登录失败、支付失败)
- 严重——主要业务受阻(如下单流程卡住)
- 一般——非关键路径有问题(如 UI 错位)
- 提示——小细节(如文案错别字)
原则 5:自动化优先
建议自动化覆盖:
- 回归测试用例(每次新版本必跑)
- 性能基准测试
- OWASP Top 10 漏洞扫描
- API 接口测试
手工测试保留:
- 探索性测试(找意外缺陷)
- 用户体验测试
- 复杂业务流程
用例库与测试报告的关系
合规验收测试报告必须包含:
- 总用例数
- 已执行用例数
- 通过用例数 + 通过率(按维度 / 按模块拆分)
- 失败用例的具体编号 + 失败原因
- 关键用例的执行截图 / 日志
用例库是测试报告的「数据底座」——没有用例库的报告,结论无法复现,专家评审会被质疑。
客户实务建议
- 合同中明确用例数范围——避免后期争议
- 验收用例书面双方确认——测试启动前甲乙双方确认
- 预留 2 轮免费复测——首测不通过的项目可改后复测
- 用例库可作为知识资产——后续版本迭代可复用
新亿诚的软件验收测试服务
新亿诚作为 CMA + CNAS 双资质测评机构,提供:
- 用例库前置评审(启动前与甲乙双方书面确认)
- 用例数 / 通过率 / 缺陷分布完整披露
- 2 轮免费复测
- 用例库可作为客户资产交付
联系顾问评估你的项目用例数量。