2、测试策略制定:基于风险的测试策略,测试范围界定,测试优先级划分,测试退出准则
好,咱们进入第二个实战环节。测试策略制定,说白了就是回答三个问题:测什么?先测谁?什么时候停?
我见过太多项目,一上来就铺开测,结果时间不够,该测的没测,不该测的浪费了人力。嗯,这其实是个管理问题,不是技术问题。我个人习惯,拿到一个项目,第一件事不是写测试用例,而是拉上开发、产品、运维,坐下来做一轮风险分析。
2.1 基于风险的测试策略
为什么要基于风险?因为资源永远不够。你想想看,一个工业自动化系统,可能有上千个功能点,但你的测试周期只有两周。怎么办?
我的做法是:把每个功能点按「故障发生概率」和「故障影响程度」两个维度打分。
| 风险等级 | 发生概率 | 影响程度 | 测试策略 |
|---|---|---|---|
| 高(H) | 频繁出现 | 系统崩溃/数据丢失 | 全量覆盖 + 自动化回归 |
| 中(M) | 偶尔出现 | 功能降级/性能下降 | 核心场景覆盖 + 抽样 |
| 低(L) | 极少出现 | 界面问题/非核心功能 | 冒烟测试 + 用户反馈 |
核心原则:高风险功能投入80%的测试资源,低风险功能用20%的资源覆盖即可。别想着面面俱到,那不现实。
我在项目中遇到过一件事:一个PLC通信模块,开发说「这个很稳定,不用测太细」。结果上线第一天,现场就出现了数据丢包。为什么?因为开发只测了理想网络环境,没考虑现场有强电磁干扰。从那以后,我对「稳定」这两个字特别敏感。
2.2 测试范围界定
测试范围怎么定?不是拍脑袋,也不是全测。我一般用「三圈法」来界定:
- 内圈(必须测):核心业务逻辑、安全相关功能、数据一致性校验。这些不测,项目就别上线。
- 中圈(建议测):性能指标、兼容性、异常处理。这些出问题会影响体验,但不至于崩盘。
- 外圈(可选测):界面美观度、非关键路径的辅助功能。这些可以放一放,或者交给用户验收。
举个例子。一个自动化产线的MES系统,内圈是「工单下发→设备执行→数据回传」这条链路。中圈是「报表生成速度」「多语言支持」。外圈是「按钮颜色」「字体大小」。你想想看,按钮颜色错了,产线会停吗?不会。但工单下发错了,整条线就废了。
我的小技巧:用「用户旅程图」来辅助界定范围。把用户从登录到退出的每一步画出来,标出关键节点。那些节点,就是你的内圈。
2.3 测试优先级划分
优先级划分,我习惯用P0-P3四级制。注意,这不是拍脑袋,而是有依据的。
| 优先级 | 定义 | 示例 | 响应要求 |
|---|---|---|---|
| P0 | 阻塞性缺陷,不修复无法继续 | 登录失败、核心流程中断 | 立即修复,24小时内 |
| P1 | 严重缺陷,影响主要功能 | 数据计算错误、关键接口超时 | 下一个迭代修复 |
| P2 | 一般缺陷,有替代方案 | 某个非核心按钮失效 | 本版本内修复 |
| P3 | 轻微缺陷,不影响使用 | 文案错别字、样式偏移 | 下个版本修复 |
这里有个坑,我踩过。有一次,开发说「这个P2的bug不影响功能,先放着」。结果用户验收时,那个bug恰好是客户最在意的功能。嗯,所以优先级不是一成不变的,要结合客户视角动态调整。
避坑指南:我曾经因为优先级划分太死板,导致一个P2的bug拖了三个版本。后来客户投诉,说「你们是不是不重视我们?」。从那以后,我定了一个规矩:每个P2以上的bug,必须标注「影响用户数」和「影响频次」。如果影响用户数超过10%,自动升级为P1。
2.4 测试退出准则
什么时候可以停止测试?这个问题,很多团队都搞不清楚。我见过两种极端:一种是「测到没bug为止」,另一种是「时间到了就停」。都不对。
我个人习惯,用「量化指标」来定义退出准则。比如:
- 功能覆盖率:所有P0/P1用例100%通过,P2通过率≥95%
- 缺陷收敛率:连续3天新增缺陷数≤2个,且无P0/P1缺陷
- 回归测试通过率:自动化回归用例通过率≥98%
- 性能指标:响应时间、吞吐量、CPU/内存使用率均在阈值内
举个例子。一个SCADA系统的测试,我们定了退出准则:
退出条件:
1. 所有P0用例通过(共12条)
2. P1用例通过率100%(共45条)
3. P2用例通过率≥95%(共120条)
4. 连续3天无新增P0/P1缺陷
5. 压力测试:500并发下,响应时间<2s,无内存泄漏
6. 安全测试:OWASP Top 10 全部覆盖,无高危漏洞
注意,退出准则不是一成不变的。我记得有个项目,客户要求特别严,我们就把P2通过率提到了98%。还有个项目,时间特别紧,我们只要求P0/P1全过,P2可以放一放。灵活一点,别死板。
关键提醒:退出准则一定要在测试开始前就定好,并且和项目组达成共识。别等到测试快结束了,才说「我觉得还不够」。那时候,开发、产品、运维都会跟你急。
好了,测试策略制定这块,核心就是这四步:风险分析定方向,三圈法界定范围,P0-P3排优先级,量化指标定退出。你想想看,是不是比「上来就测」靠谱多了?
下一章,咱们聊聊测试用例设计。嗯,那才是真正考验功力的地方。