3、测试计划制定:基于V模型的测试策略、测试用例设计方法、样本量与置信度
好,我们进入第三个核心话题——测试计划制定。说实话,很多工程师一上来就埋头写测试用例,结果测到一半发现漏项,或者样本量不够,数据没法用。我个人的习惯是,先想清楚策略,再动手。V模型是个好东西,它把测试和开发绑在了一起,说白了就是“你设计什么,我就测什么”。
3.1 基于V模型的测试策略
V模型长什么样?左边是需求、设计、编码,右边是单元测试、集成测试、系统测试、验收测试。左右一一对应。你想想看,如果需求阶段没想清楚“输入过压保护阈值”,那系统测试阶段你怎么测?测不出来。
我在车载电源项目里遇到过一件事。客户要求“输出纹波小于50mV”,但需求文档里没写测试条件——是满载还是轻载?常温还是高温?结果测试团队按自己的理解测了,客户不认账。这就是V模型没对齐的典型教训。
基于V模型的测试策略,核心就三点:
- 需求可测性评审:每个需求都要能转化为测试指标。比如“效率大于95%”,你得明确输入电压、输出功率、环境温度。
- 测试用例与设计同步:设计文档写完,测试用例就要出来。别等样机做好了再想怎么测。
- 回归测试闭环:每次设计变更,对应的测试用例必须重新执行。我曾经因为漏掉一个电容变更的回归测试,导致批量产品出现低频振荡,教训深刻。
关键点:V模型不是瀑布模型。它强调测试活动要向左移,越早介入越好。我建议在系统需求评审时,测试工程师就要在场。
3.2 测试用例设计方法
测试用例怎么设计?不是拍脑袋。我常用的方法有几种,这里重点讲三个:等价类划分、边界值分析、正交试验法。
3.2.1 等价类划分
说白了就是把输入域分成几个“等价”的区间。比如输入电压范围是9V到16V,那有效等价类是9V~16V,无效等价类是小于9V和大于16V。每个区间选一个代表值测试就行。我在做DC-DC测试时,经常用这个方法减少测试次数,但要注意——边界处往往容易出问题,所以还要结合边界值分析。
3.2.2 边界值分析
经验告诉我,很多故障都发生在边界上。比如欠压保护点设定在8.5V,那你要测8.4V、8.5V、8.6V。别只测一个点。我曾经遇到一个项目,欠压保护在8.5V触发,但8.4V时芯片已经进入不稳定状态,输出开始抖动。如果只测8.5V,根本发现不了。
3.2.3 正交试验法
当参数很多时,比如温度、输入电压、负载电流、输出电容容值,全组合测试根本不可能。正交试验法可以用最少的组合覆盖主要交互影响。我习惯用L9(3^4)正交表,4个因素3个水平,只需要9次测试。嗯,这里要注意,正交试验法适合找主效应,交互效应可能漏掉,所以关键参数还是要单独验证。
个人技巧:我一般先做边界值分析,再做等价类划分,最后用正交试验法覆盖多参数组合。这样既保证覆盖率,又控制测试成本。
3.3 样本量与置信度
这是很多工程师头疼的地方。样本量取多少?10个?20个?100个?其实取决于你要达到的置信度和可靠度。说白了,你希望有多大的把握说“这个产品合格”。
对于车载电源,我常用的方法是基于二项分布的抽样方案。公式不复杂:
n = ln(1 - CL) / ln(R)
其中:
n = 样本量
CL = 置信度(通常取90%或95%)
R = 可靠度(比如99%表示100个产品中允许1个失效)
举个例子:如果要求可靠度99%,置信度90%,那么:
n = ln(1 - 0.9) / ln(0.99) = ln(0.1) / ln(0.99) ≈ 230
也就是说,你需要测试230个样品,且全部通过,才能说“有90%的把握认为产品可靠度达到99%”。
我在实际项目中,通常根据风险等级来定:
| 风险等级 | 可靠度要求 | 置信度要求 | 样本量(零失效) |
|---|---|---|---|
| 低(非安全功能) | 95% | 80% | 32 |
| 中(影响性能) | 99% | 90% | 230 |
| 高(安全相关) | 99.9% | 95% | 2995 |
注意:样本量不是越大越好。成本、时间、测试资源都要考虑。我建议先做小样本预测试,发现问题后改进设计,再用大样本验证。别一上来就做230个,万一设计有问题,全废了。
还有一个常见误区:样本量计算基于“零失效”假设。如果你允许1个失效,样本量会大幅增加。比如可靠度99%、置信度90%、允许1个失效,样本量需要约389个。所以,我一般要求“零失效”作为验收标准,除非客户明确允许有失效。
好了,测试计划制定的核心就是这些。V模型帮你对齐需求,测试用例设计方法帮你覆盖全面,样本量与置信度帮你科学决策。下一章我们讲具体的测试执行与数据记录,到时候我会分享一些现场踩坑的经验。