Page 74 - 《软件学报》2026年第1期
P. 74

吉品 等: 面向智能软件系统的测试用例生成方法综述                                                         71


                  3.4   小    结
                    综上所述, 当前面向图像处理应用的测试用例生成方法在测试效果提升方面已取得一定进展, 但仍存在真实
                 性保障不足、变异策略适配性有限等问题. 针对上述问题, 本文认为今后研究人员在设计面向图像处理应用的测
                 试输入方法时, 需更加注重结合图像数据特性, 重点保障测试输入的真实性, 尤其是确保被识别或被检测对象无失
                 真变形, 以避免蜕变关系失效及测试误报. 此外, 未来研究可重点关注测试用例变异过程中不同变换对测试结果的
                 影响机制, 分析易引发误报的变异类型, 并设计针对性的控制策略. 同时, 如何通过总结现有技术路径的不足并进
                 一步改进方法, 以拓宽适配的应用场景, 也是未来的重要研究方向.

                  4   自然语言处理应用

                    自然语言处理      (NLP) 是指使计算机能够理解、分析和处理人类自然语言的技术, 其核心目标是实现人类语言
                 与机器语言之间的相互转换. 自然语言处理可以细分为两个子领域: 一是围绕基本问题展开的核心研究领域, 如语
                 言建模、词法分析、句法分析与语义理解等; 二是面向实际应用场景的问题领域, 如命名实体识别、机器翻译、
                 阅读理解等    [61] . 通常, 自然语言处理应用需要首先成功解决一个或多个核心领域的基础任务, 再在此基础上进一
                 步实现具体的应用功能. 这些应用程序通常先利用自然语言理解技术, 将含有杂质、无序且不规则的自然语言文本,
                 转换为规则化、标准化、便于后续处理的结构化文本; 随后, 通过词袋模型                      (bag-of-words)、词向量  (word embedding)
                 等文本表示方法, 将文本转化为计算机能够理解和运算的形式, 进而完成分类、推理或生成等后续处理. 这类应用
                 的输入数据普遍具有语义复杂性、上下文敏感性及结构多样性的特征, 给测试用例生成带来了显著挑战.
                    在自然语言处理领域, 测试用例生成主要面临以下几个挑战: (1) 多样化输入特征的文本生成: 测试用例需要
                 能够覆盖多种输入特征, 例如文本长度、语言风格、语法结构与句型复杂度, 以满足不同自然语言处理任务的测
                 试需求, 并提升测试输入的多样性与覆盖范围; (2) 文本语义和质量的可控: 在测试用例生成过程中, 需确保文本在
                 语义变化程度、语法正确性、语言流畅性及风格连贯性等方面具有可控性和合理性, 以保证生成文本既符合实际
                 应用情境, 又具备有效触发被测系统特定行为的能力; (3) 基于上下文语义的测试预言构建: 测试预言的构建需要
                 结合具体任务特性与上下文预期语义变化, 设计可自动验证的规则、判别标准或度量机制, 从而减少对人工审核
                 的依赖, 提升测试效率, 并降低由于主观性判断导致的偏差或误差.
                    如表  3  所示, 随着自然语言处理应用在智能对话系统、机器翻译系统及机器阅读理解系统等领域的广泛部署
                 与应用, 研究人员逐步提出了针对这些具体任务的测试用例生成方法. 通过对现有文献的系统调研, 本文发现, 当
                 前研究主要集中在智能对话          (intelligent dialogue system)、机器翻译  (machine translation) 和机器阅读理解  (machine
                 reading comprehension) 这  3  个典型任务. 这些任务覆盖了自然语言理解与生成的多个关键环节, 测试用例生成方
                 法也在应对不同输入输出形式、多轮交互语境以及复杂推理能力的测试需求方面, 体现出不同的设计思路与技术
                 挑战.

                                     表 3 现有面向自然语言处理应用的测试用例生成方法总结

                 应用 发表     文献               测试输入生成                               测试预言构建
                 任务 年份     来源
                      2021  [62]
                                                                   蜕变关系: 自然语言理解模块对于语义相同的测试用
                      2023  [63]  (1) 同义词替换; (2) 回译; (3) 插入单词
                                                                   例的输出应该是相同的
                      2024  [64]
                 智能
                 对话             (1) 对话轮次打乱; (2) 对话轮次减少; (3) 对话轮次   蜕变关系: 除不可回答问题外其他问题的答案在扰动
                      2024  [65]  复制; (4) 对话轮次打乱并减少; (5) 对话轮次打乱    前后应该与原始问题的答案相似; 使用不同扰动算子
                                                                   生成可回答性相同的问题的答案应相似; 基于同一原
                                并复制
                                                                   始问题生成的可回答性不同的问题的答案应该不同
                                                                   蜕变关系: 语义相似的语句的翻译结果应该具有相似
                      2020  [66]  使用词性相同的词语替换句子中的词语
                 机器                                                的语法结构
                 翻译                                                蜕变关系: 名词短语在不同的上下文中应该具有相似
                      2021  [67]  从源句中提取名词短语
                                                                   的翻译
   69   70   71   72   73   74   75   76   77   78   79