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

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


                 语音转换算子生成新语音; (2) 将种子语音和新语音输入被测对象, 获取相应识别结果; (3) 验证新语音与种子语音
                 的识别结果是否满足蜕变关系. 该类方法常用的蜕变关系是: 当输入包含相同文本序列的语音时, 被测对象的输出
                 应保持一致. 该类方法的典型代表为自动化语音识别测试工具                     ASRTest, 它集成了  3  组能够模拟真实应用场景中
                 语音的变换算子      [94] . 第  1  组是特征变异算子, 即通过改变音高、音量、语速等语音特征来模拟不同人的声音和说
                 话方式, 以评估语音识别系统的说话者适应性. 第               2  组是背景噪声注入算子, 包括白噪声注入与环境噪声注入, 以
                 评估语音识别系统面对各项噪声时的抗干扰能力. 第                 3  组是混响模拟算子, 包括麦克风位置修改与声源位置修改,
                 以评估在不同声学条件下语音识别系统的性能. 与                ASRTest 相类似, 自动化测试框架       AequeVox  使用  8  种与真实
                 应用场景高度相关的转换算子对种子语音进行转换, 包括噪音注入、振幅修改、频率修改、振幅剪切、丢帧、低通
                 滤波器过滤和高通滤波器过滤          [96] . 虽然在语音转换方面, ASRTest 和   AequeVox  存在部分相同的转换算子, 但这两
                 个工具测试的侧重点并不相同. ASRTest 致力于以更高的效率捕获语音识别系统的错误行为, 因此集成了基于语
                 音识别系统特性设计的        Gini 不纯度测试用例生成引导算法, 以生成能够触发更多错误的测试用例. 而                      AequeVox
                 致力于度量语音识别系统的公平性, 融合了蜕变测试与差分测试的思想. AequeVox                      记录被测对象在输入两组不同
                 群体的语音时的识别错误率以及在实施转换算子后的错误率增量, 若两个群体语音所对应的错误率增量的差值超
                 过了设定阈值, 则认为这违反了公平性.
                    除此之外, 还有一些语音识别测试方法可归类为差分测试技术, 技术路线可概括为: (1) 基于文本生成测试语音;
                 (2) 将测试语音输入多个被测语音识别系统; (3) 比较多个语音识别系统的识别结果. CrossASR                    [92] 和  CrossASR++ [93]
                 是该类型语音识别测试方法的典型代表, 皆集成了不同的文本转语音                       (text-to-speech, TTS) 模型, 适配多个语音识
                 别系统, 并包含一个故障评估器. CrossASR        和  CrossASR++的基本工作原理是运用       TTS  模型从文本自动生成语音,
                 再将这些语音输入到不同的语音识别系统中进行差分测试, 以发现未通过的测试用例. 可以看出, CrossASR                               和
                 CrossASR++生成的测试用例完全依赖于现有文本的质量与数量, 这在一定程度上限制了测试效率. 为解决上述问
                 题, ASDF  在收集一组失败的测试用例后, 使用多种文本转换方法对失败的测试用例进行转换, 以获取更多测试用
                 例生成所需要的文本, 进一步地提升测试用例生成的数量                  [95] . 例如, 改变一个句子的时态, 或者用其他音素相似的
                 词代替容易出错的词. 此外, ASDF        还包含一个语音分析模块, 该模块通过分析失败的测试用例以找出语音识别系
                 统更倾向于产生错误的音素, 而不是仅汇报失败测试用例的数量. 这                     3  种工具具有良好的可扩展性, 用户可选择更
                 先进的   TTS  模型、语音识别系统及更优的故障评估器, 以提升测试性能.
                  5.2   现有方法优缺点分析
                    与图像和文本数据相比, 语音具有更强的时序性和声学复杂性, 其测试用例生成面临更多挑战. 目前方法虽已
                 覆盖从   TTS  合成到语音变异的多类技术路径, 但仍存在若干共性不足: (1) 语义一致性保障不足: 生成语音的语义
                 一致性缺乏保障, 尤其在复杂扰动或            TTS  模型精度不足时, 易引发误判, 降低了测试结果的可靠性和参考价值;
                 (2) 测试语音多样性有限: 测试语音的声学多样性与真实环境匹配度仍有限, 难以全面覆盖应用场景, 导致部分特
                 殊场景下的系统鲁棒性评估不足; (3) 错误归因与解释能力薄弱: 测试结果中错误类型的归因与解释能力较弱, 缺
                 乏精细化分析手段, 不利于定位问题根因并指导系统改进. 为进一步分析上述问题的具体表现, 后文表                               6  总结了现
                 有面向语音处理应用的测试用例生成技术路径在实践中的典型优缺点.
                  5.3   小    结
                    综上所述, 当前面向语音处理应用的测试用例生成方法在模拟真实场景特征与揭示系统鲁棒性方面取得了积
                 极进展, 但仍存在声学变异控制不够精细、语义保持能力有限、测试语音多样性不足等问题. 因此, 未来的研究应
                 进一步突破现有语音变异策略的局限, 探索能够兼顾语音质量与语义一致性的多样化音频生成方法. 具体而言, 可
                 引入结合语音到文本回译机制与音素对齐技术的语义保持手段, 确保语音变异后的内容仍符合原始语义; 构建覆
                 盖多说话人特征、设备差异及环境噪声的系统化测试语音库, 以提升测试的代表性与覆盖广度; 同时, 发展面向不
                 同语音识别系统特性设计的自适应音频变异方法与差异分析机制, 以提高捕获错误输出的针对性与效率, 从而增
                 强面向语音处理应用的测试方法的实用性与泛化能力.
   77   78   79   80   81   82   83   84   85   86   87