数值软件单元测试与场景测试工具的研究与应用
1. 数值软件单元测试相关研究
在数值软件单元测试领域,我们采用了基于学习的测试(LBT)方法与迭代随机测试(IRT)方法进行对比研究。
首先,研究人员为数值程序及其规格设置了随机生成器,生成大量的被测系统(SUT)/规格对,并对这些SUT进行变异,使变异的误差百分比在10%到0.01%之间变化。然后,测量使用LBT和IRT找到每个变异SUT中第一个真阴性所需的最小测试用例数量。对于IRT,这一测量提供了在等概率输入分布下变异SUT的平均故障时间(MTF)的估计。为处理IRT的随机行为,对多次运行的结果进行平均,直到得到收敛良好的平均值。接着,比较这两种测量结果的比率,并对许多不同的SUT和相同误差百分比大小的不同变异的这一比率进行平均。
研究结果通过图3展示,该图说明了随着误差百分比大小的减小,LBT和IRT的相对性能。x轴以对数尺度表示误差百分比大小,y轴给出IRT测试用例平均数量与LBT测试用例平均数量的比率(IRT/LBT)。图3中有两条曲线,一条用于测试SUT与等式规格的情况,另一条用于测试SUT与不等式规格的情况。当误差大小超过10%时,两条曲线迅速收敛到y = 1.0,这也解释了我们选择的误差大小范围。
| 误差大小范围 | 曲线收敛情况 |
|---|---|
| 超过10% | 两条曲线迅速收敛到y = 1.0 |
| 10% - 0.01% | 体现LBT和IRT相对 |
超级会员免费看
订阅专栏 解锁全文


被折叠的 条评论
为什么被折叠?



