Page 69 - 《软件学报》2026年第1期
P. 69
66 软件学报 2026 年第 37 卷第 1 期
同领域的测试需求与挑战. 在分类中, 前 4 种类型的智能软件系统主要处理单一模态的数据, 而多模态数据处理应
用能够同时接收和处理多种类型的数据. 例如, 自动驾驶系统需要通过汽车上的摄像头、激光雷达等多种传感器
收集环境和车辆自身的多模态信息, 以在复杂多变的应用场景中实现高准确率和高安全性的目标 [41] . 此外, 部分
行业特定领域 (如金融风控、医疗诊断) 虽未单独列为分类, 但其测试需求通常可以归为多模态或特定单模态处
理的变种. 因此, 在测试方法层面, 这些行业领域的需求已被纳入上述分类的框架之中, 从而保证了分类的完整性
和覆盖广度.
2 文献收集与汇总
本文采用如下步骤对文献进行了收集、筛选与分类, 具体流程如图 2 所示.
首先, 本文定义文献纳入标准为: 文献需涉及面向某类智能软件系统的测试用例生成方法, 并公开发表于会议、
期刊、技术报告、书籍或收录于存储库的预印本中. 针对 2012 年 1 月 1 日–2024 年 12 月 31 日期间公开的相关
文献, 本文使用搜索关键词在国内外知名数据库与学术引擎中进行检索, 随后逐一检查收集文献的参考文献, 以发
掘与搜索关键词相关的补充文献. 具体的文件搜索步骤如下所示.
(1) 使用 “object detection testing”“machine translation testing”“machine reading testing”“dialogue system testing”
“speech recognition testing”“autonomous vehicle testing”“self-driving cars testing”“deep learning testing”等关键词进
行文献检索, 并在线搜索 ACM Digital Library、IEEE Xplore Digital Library、Spring Link Online Library、Wiley
Online Library、Elsevier ScienceDirect、ProQuest Research Library、arXiv、中国知网和万方数据库等国内外的知
名数据库和学术搜索引擎, 并在标题、摘要、关键词和索引中进行检索 (G1).
(2) 对于上述步骤所获得的文献, 逐一审查其参考文献, 识别与搜索相关的文献并纳入文献集合, 即从已经获
得的文献集合的参考文献当中识别遗漏的文献.
综上两个步骤, 本文收集到与搜索关键词相关的文献共 240 篇 (G2). 随后, 本文对这些文献进行了严格的人
工过滤与筛选. 通过分组审阅的方式, 手动过滤了与面向智能软件系统测试用例生成方法不相关的文献. 审阅过程
中采用交叉分组审查, 对于每一篇拟删除的文献, 需经研究小组一致审议后方可删除. 删除文献的具体步骤如下.
(1) 在文献集合 G2 中, 删除与软件测试领域无关的 74 篇文献, 得到包含 167 篇文献的集合 G3.
(2) 在文献集合 G3 中, 删除与深度学习框架测试相关的 32 篇文献, 得到包含 135 篇文献的集合 G4.
(3) 在文献集合 G4 中, 删除 11 篇综述与实证研究类文献, 得到包含 124 篇文献的集合 G5.
(4) 在文献集合 G5 中, 删除与对抗样本生成相关、与测试用例生成无关的 44 篇文献, 最终得到包含 80 篇文
献的集合 G6, 作为本文最终梳理总结的文献列表.
最终, 本文共筛选出 80 篇与研究主题相关的文献. 在筛选过程中, 本文剔除了与对抗样本相关的文献, 主要原
因在于对抗样本生成与测试用例生成的目标和方法存在本质区别. 对抗样本生成的核心目标是通过设计微小但有
意的扰动, 干扰模型决策或诱导其产生错误输出, 更多关注的是模型在极端或边界条件下的鲁棒性与安全性, 而非
系统在实际应用场景中的表现 [42] . 相比之下, 测试用例生成的目标更广泛, 主要是验证系统在多样化输入条件下
的功能性、可靠性和表现一致性. 测试用例生成通常强调输入数据的多样性和覆盖性, 旨在通过模拟现实应用中
的输入场景 (包括正常和异常情况) 评估系统在实际任务中的行为是否符合预期, 而非依赖特定的攻击性算法或
梯度信息, 这决定了其与对抗样本生成方法的根本区别. 基于上述差异, 本文认为对抗样本生成更侧重于评估模型
的安全性与攻击防护能力, 而非软件测试领域中的功能性和可靠性验证 [43] . 由于本文综述的核心目标是总结测试
用例生成方法及其在智能软件系统中的应用, 决定删除与对抗样本生成相关的文献, 以避免主题混淆, 保持综述内
容的聚焦性与系统性.
随后, 由熟悉智能软件测试用例生成的研究人员同样采用交叉分组的方式, 对 80 篇文献进行具体的分类, 文
献分类的总览图如图 3 所示. 本文根据智能软件系统的应用领域, 将所收集文献划分为 6 大类: 面向图像处理应用、
自然语言处理应用、语音处理应用、点云处理应用、多模态数据处理应用, 以及面向深度学习模型的测试用例生

