Page 82 - 《软件学报》2025年第12期
P. 82

虞圣呈 等: 基于大模型语义匹配的跨平台移动应用测试脚本录制回放                                                5463


                 试中并不需要执行, 或者在目标环境中根本不存在. 例如, 录制过程中应用针对第                         1  次使用出现了临时弹窗或提
                 示, 需要关闭后再进行下一步操作, 而在回放过程中不会出现该弹窗或提示, 便可直接进行下一步操作. 回放冗余
                 指的是在回放过程中, 遇到了录制时没有记录的额外操作步骤, 这些步骤是由于目标环境中的差异导致的, 在录制
                 过程中未能预见和记录. 例如, 录制步骤同意软件开发者提出的某些条款, 只需要点击“同意”控件即可进入下一步
                 操作, 但在回放页面中, 同样的条款被分开变成了两个页面, 需要先点击“下一页”才能够到条款底部, 再点击“同意”
                 控件才可以进行下一步操作. 相较于录制操作, 回放操作需要额外进行一次操作才可以进入和录制操作相匹配的
                 下一页面.
                    图  1  给出了不同平台间测试动作序列差异动机示例. 左侧两张截图和右侧                     3  张截图分别对应鸿蒙系统和        iOS
                 系统在“美团”应用中实现“查看感冒发烧药品”操作的动作序列. 该示例中, 鸿蒙系统在美团主界面点击“美团买药”
                 后, 直接进入买药界面; 而      iOS  系统在点击“美团买药”后, 会弹出一个广告窗口, 需要额外点击关闭广告才能进入
                 买药界面. 当使用鸿蒙系统的录制脚本在             iOS  系统上进行回放时, 录制的操作序列为: 点击“美团买药”               → 进入买
                                                                                                    → 点
                 药界面   → 点击“感冒发烧”, 而回放时应该执行的操作序列为: 点击“美团买药”                  → 关闭广告    → 进入买药界面
                 击“感冒发烧”, 这样就导致了回放冗余. 类似的, 当使用              iOS  系统的录制脚本在鸿蒙系统上进行回放时, 则会出现
                 录制冗余问题.



















                                           图 1 不同平台间测试动作序列差异动机示例

                    录制冗余和回放冗余是在移动应用测试中常见的问题, 主要源于平台、版本、设备和用户路径的差异. 传统
                 的跨平台测试脚本录制回放技术依赖于页面布局细节, 需要开发和维护多个测试脚本, 投入大量人力成本                                  [18]  . 为
                 了解决这个问题, 研究人员开始探索基于图像的跨平台测试脚本录制回放技术, 以图像为基础组织测试过程                                    [50] .
                 然而, 传统的基于图像的方法仍然存在一些问题, 例如操作流程差异难以匹配等. 尽管在不同平台上使用相同的
                 UI 设计, 但操作流程差异仍然存在, 如临时弹窗、控件隐藏和信息分页不同等. 解决这些问题需要更智能的录制
                 回放技术, 通过理解和预测操作流程, 自动跳过冗余步骤或补充必要操作, 从而提高测试脚本适应性和有效性. 基
                 于此, 我们提出了利用大语言模型进行语义匹配的方法, 解决移动应用测试中的跨平台测试脚本的录制冗余和回
                 放问题, 降低测试开发成本. 该方法利用大语言模型, 结合提示信息和任务定义, 对录制回放任务和操作流程差异
                 进行理解. 大语言模型具备海量的文本数据和推理能力, 能够推理当前操作流程差异的类型, 并给出操作建议. 通
                 过语义匹配, 可以跳过冗余的录制步骤或给出待操作控件的坐标, 从而实现更高效的测试脚本录制回放.
                    具体而言, 该技术通过记录用户操作的控件信息                (位置、类型、文本内容等), 利用图像识别、语义理解和深
                 度学习技术进行控件匹配. 当遇到难以匹配或有流程差异的步骤时, 借助大语言模型的推理能力提供操作建议. 对
                 于录制冗余, 根据大语言模型的推断结果, 系统将自动跳过冗余步骤继续匹配, 完成后续的回放操作. 对于回放冗
                 余, 大语言模型将提供待操作控件的具体坐标, 使得回放系统能够根据该结果继续操作, 实现正确的回放. 最终, 该
                 方法有效完成了测试脚本的录制和回放.
   77   78   79   80   81   82   83   84   85   86   87