Page 78 - 《软件学报》2026年第2期
P. 78
沈庆超 等: 智能问答系统逻辑推理测试 557
期望数量分别为在 ChatGPT 上的 3 976、2 475、1 693 和在 ChatGLM 上的 4 097、3 456、1 513. QALT 在
ChatGPT 和 ChatGLM 上检测到真实缺陷的总体期望分别比 QAQA 多 1 501 和 2 283 个, 比 QAAskeR 多 641 和
1 941 个. 因此, QALT 比 QAQA 和 QAAskeR 有更强的缺陷检测能力, 且能够测试智能问答系统的逻辑推理能力.
此外, 我们将在未来的工作中进一步降低 QALT 的误报率.
5.2.2 针对问题 2 的结果分析
QALT 有 3 个关键的组件: 蜕变关系设计、测试输入自然性增强策略和基于依存句法分析的选择策略. 为了
验证每个组件对整体方法的效果, 研究问题 2 分别探索了关键变异位置/选择策略对自然性的影响、不同蜕变关
系对揭错能力影响和选择策略对真阳性的影响.
● 选择策略对自然性的影响. 本文使用的关键变异位置选择策略和名词词组选择策略旨在提升 QALT 生成测
试用例的自然性. 自然的测试输入应该有正确的语法和流畅的语义 [17] . 为了验证选择策略的有效性, 我们使用随
机策略替换的选择策略构造一个 QALT 的变体. 通过将二者所生成测试用例中的描述性语句与原始测试输入中
各个句子的平均余弦相似度作为衡量指标, 比较测试输入的自然性. 需要注意的是, 本文统计了各个测试数据集中
上下文的平均余弦相似度作为基准用于数据的归一化. 表 3 展现了不同选择策略生成测试输入的自然性.
表 3 不同选择策略生成测试输入的自然性
选择方法 BoolQ SQuAD2 NarQA 平均值
QALT 0.75 0.72 0.66 0.71
随机选择 0.65 0.60 0.55 0.60
从表 3 中可以看出, 测试输入自然性增强方法使得 QALT 技术产生了更自然的测试输入. 具体来说, QALT 相
较于随机选择的实验, 使得插入句子的余弦相似度平均提升至 0.71, 这意味着 QALT 的测试输入具有更好的可读
性, 所检测到的缺陷也更具备研究意义. 尽管自然性较低的测试输入也能够检测到缺陷, 但是由于检测到的缺陷在
现实生活中不常见, 所以缺陷的危害等级较低. 因此, 使用自然的测试输入检测危害更强的缺陷更有意义. 此外, 由
于余弦相似度衡量了插入句子与测试输入之间的相关程度, 余弦相似度越大, 说明二者之间的相似程度越高. 当余
弦相似度取值为 1 时, 说明二者之间完全一致, 没有任何不一样的语义信息, 但在测试输入中显然不存在上述情
况. 因此, 0.71 对于文本相似度来说是一个相对较大的值, 这说明二者在余弦空间中相对接近, 共享一定的语义内
容或存在相似的上下文.
● 不同蜕变关系的缺陷检测能力. 本研究提出 3 种蜕变关系, 包括两种基于一阶变异和一种基于高阶变异的
蜕变关系. 因此, 我们需要对每个蜕变关系执行独立的测试任务, 以评估各个蜕变关系的缺陷检测能力. 具体而言,
针对每种蜕变关系, 本研究为测试集中的每个种子独立生成新的测试输入, 并记录每种蜕变关系检测到的缺陷数
量. 由于选择结果会影响 ERQC 测试用例生成的成功率 (需要两次选择), 为了实现不同变异算子之间公平的比较,
我们关闭了 QALT 中的基于依存分析的选择策略, 分别单独执行蜕变关系, 并对比它们的揭错能力. 表 4 给出了
每种蜕变关系检测到缺陷的数量和比例.
表 4 每个蜕变关系检测到缺陷的数量与揭错率
BoolQ SQuAD2 NarQA 总和
待测软件 蜕变关系
数量 揭错率 (%) 数量 揭错率 (%) 数量 揭错率 (%) 数量 揭错率 (%)
ERQ 882 27.0 3 395 28.6 936 27.0 5 213 28.0
ChatGPT ERC 238 7.2 2 360 19.9 466 13.5 3 064 16.5
ERQC 1 006 30.8 3 634 30.6 1 053 30.4 5 693 30.6
ERQ 692 21.2 3 566 30.0 1 116 32.2 5 374 28.9
ChatGLM ERC 249 7.6 2 107 17.7 516 14.9 2 872 15.4
ERQC 713 21.8 3 886 32.7 1 278 36.9 5 877 31.6
分析发现, 对于 ChatGLM 来说, 两种基本蜕变关系 (ERQ 和 ERC) 在 BoolQ 数据集上的缺陷检测率均较低.
这是因为 ChatGLM 模型的表现受测试输入长度的影响. 此外, ERQ 在所有数据集中和所有待测模型上均比 ERC

