Page 260 - 《软件学报》2025年第10期
P. 260
吴泊逾 等: 干扰惰性序列的连续决策模型模糊测试 4657
5 方法有效性威胁分析
5.1 外部有效性
外部有效性威胁涉及所提出方法的通用性. IIFuzzing 的外部有效性威胁主要来自预测惰性序列时要依赖从历
史数据中学习到的知识 (例如, 状态序列的表示学习, 聚类的拟合以及干预点的选择等), 这些知识与被测算法和测
试环境都是相关的. 当面对新的测试场景时, 需要依据领域相关数据对 IIFuzzing 的惰性预测模型进行训练或者调
校. 我们在 3 个仿真环境的 4 种不同类型的模型上进行了实验评估, 所选的目标模型都是当前最先进的模型, 仿真
环境也是学术界和工业界广泛应用的环境, 每个模糊测试周期的时间跨度设置为 12 h, 这是实验评估的标准设置 [9,46] .
这些测试配置下, 根据第 4.5.1 节 RQ1 中图 3 展示的结果, 可以发现 IIFuzzing 基本上在 12 h 的测试全时段都有性
能优势 (#Crash), 且展现出优势不断拉大的趋势, 说明本方法的外部威胁较小, 外部有效性是可控的.
5.2 内部有效性
内部有效性威胁主要集中在 IIFuzzing 的工作机理上. 一方面, 当被测系统存在较多问题时, 测试序列的密度
分布情况可能并不满足本文假设, 从而导致现有的方法设计无法准确识别惰性序列进而造成方法失效. 但如果通
过分析能够发现该情形下惰性序列新的分布模式, 那么通过调整 IIFuzzing 识别惰性序列的基本原理, 方法依然能
够应用. 另一方面, 由于在推断一个测试用例是否应该继续执行或跳过时, IIFuzzing 会引入额外的开销, 如果单个
测试序列的执行时间比引入的开销还要短, IIFuzzing 减少测试资源消耗的假设将受到质疑. 据我们的观察和实验,
在连续决策场景中 MDP 的执行通常是耗时的, 以 MARL+CoopNavi 为例, 这是本实验中 12 h 内执行的测试轮次
最多的配置, 也意味每一轮测试的时间最短, 该配置每轮测试的时间平均 611 ms, 而 IIFuzzing 惰性序列在线预测
的开销仅在毫秒级别, 这说明 IIFuzzing 工作机理是有效的. 此外, 我们用 MDPFuzz 方法提供的源代码来实现基线
模型, 以确保实验结果的正确性和公平性. 另一个限制是 IIFuzzing 通过变异初始状态来生成多样的测试用例, 无
法在中间状态诱导场景中的元素以生成临界案例或意外情况. 通过变异任意中间状态来生成逼真而具有挑战性的
场景需要进一步探索.
5.3 结论有效性
结论有效性的威胁在于评估指标. 我们使用易于理解的指标“#Crash”和“#Test”. 为了回答 RQ2, 我们还使用准
确度和召回率来评估识别 (非) 惰性状态序列的性能, 并分别呈现两个标签的双侧预测结果.
6 总 结
连续决策模型由于需要不断地和环境进行“交互-行动”的连续决策, 环境和交互的不确定性使得经典测试方
法追求的测试覆盖和缺陷探测效率面临极大的挑战. 模糊测试技术的基本原理是通过向目标系统提供非预期的输
入并监控执行结果, 以发现目标系统的缺陷. 但针对连续决策模型, 要执行的是“状态-行动”决策序列, 初始状态很
难影响到后续的决策序列. 模糊测试如只对初始状态 (测试输入) 做变异, 是很难触发决策缺陷的, 这也是模糊测
试对连续决策模型效能不高的原因. 本文提出的 IIFuzzing, 基于表示学习和密度聚类可以准确预测模糊测试中不
会触发失效事故的惰性序列, 并进行自动干预, 从而扩大了资源限制条件下的测试探索空间, 并加速了失效事故的
探测效率.
下一步的工作可以基于对决策序列模式的深度学习, 尝试合理干预决策序列的中间状态, 使其导向可能的事
故, 以期更主动和更充分地揭示模型的决策缺陷.
References:
[1] Markov decision process. 2024. https://en.wikipedia.org/wiki/Markov_decision_process
[2] California DMV. Autonomous vehicle collision reports. 2024. https://www.dmv.ca.gov/portal/vehicle-industry-services/autonomous-
vehicles/autonomous-vehicle-collision-reports/
[3] Guo JM, Jiang Y, Zhao Y, Chen Q, Sun JG. DLFuzz: Differential fuzzing testing of deep learning systems. In: Proc. of the 26th ACM

