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

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


                 了测试的技术门槛, 使得非专业人员也能参与自动化测试; 其次, 它能够真实再现用户操作, 具有较高的测试覆盖
                 率和可靠性. 此外, 这种技术在测试环境重现和回归测试中尤为有效, 有助于发现和定位软件系统中的潜在缺陷.
                 然而, 尽管录制与回放技术有诸多优势, 其在实际应用中也面临一些挑战, 例如脚本的可维护性问题、对动态
                 GUI 元素的适应性不足等. 随着研究的深入和技术的进步, 针对这些问题的解决方案不断涌现, 使得录制与回放技
                 术在  GUI 测试中的应用前景愈加广阔.
                    近年来, 录制与回放技术迎来了新的发展阶段. 先进的图像识别和计算机视觉技术被引入                             GUI 测试  [5]  , 使得
                                                                               [6]
                 录制与回放工具在处理复杂界面和动态元素时表现得更加灵活和高效. 以                         Sikuli 为代表的现代工具利用屏幕截
                 图和图像匹配技术, 有效提升了录制回放的准确性和适应性. 这些工具不仅能够识别并操作界面元素, 还能通过脚
                 本自动化处理复杂的测试场景. 此外, 研究人员还提出了诸如脚本修复、自动化测试脚本生成等新方法, 以解决录
                 制与回放技术在应用中的各种挑战. 通过这些工作, 录制回放技术在现代软件开发和测试流程中占据了不可或缺
                 的位置, 为提升软件质量和开发效率作出了重要贡献.
                    随着移动设备的多样化和普及, 跨设备录制回放技术在软件测试中变得越来越重要. 现代应用需要在各种设
                 备上运行, 包括智能手机、平板电脑、智能手表和其他物联网设备                     [7]  . 此外, 随着以鸿蒙操作系统为代表的新一代
                 国产化操作系统的诞生与迅猛发展, 移动应用运行环境变得越发复杂. 移动应用运行的软硬件环境具有不同的设
                 备屏幕尺寸、分辨率、硬件性能和操作系统版本, 导致其行为和用户体验可能显著不同. 通过跨设备录制回放技
                 术, 测试人员可以在一种设备上录制测试脚本, 并在其他设备上重放这些脚本, 以验证应用在不同设备上的兼容性
                 和表现. Havranek  等人  [8]  提出了  V2S, 依靠图像处理和基于规则的方法来检测和分类视频中捕获的用户手势, 并
                 将这些手势转换为可重放的测试脚本. Bernal-Cárdenas 等人          [9]  在此基础上加以改进, 采用了对象检测和图像分类
                 技术, 以更高的精度检测和分类用户手势和              GUI 控件. 此外, 为了改进安卓应用的测试过程, 减少人工操作的负担,
                 并提高测试的效率和准确性, Fazzini 等人        [10]  提出的  Barista 能够准确编码用户定义的测试用例为测试脚本, 并内
                 置可在多个平台上运行的断言, 实现在多个设备和操作系统版本上自动运行这些脚本的目的. Halpern                             等人  [11]  提
                 出通过将一组来自特定设备的触摸屏事件映射到一组可重新排序并注入另一设备的虚拟用户交互来实现跨设备
                 的记录和重放. Hu    等人  [12]  介绍了  VALERA  工具, 通过一种新颖的面向流的记录和回放方法, 在高精度和低开销
                 之间取得平衡, 支持对安卓应用的传感器和网络输入、事件调度及跨应用通信进行记录和回放. Liu                               等人  [13]  介绍
                 了一种基于捕获和回放方法的自动化测试安卓应用的方法, 通过捕获用户事件并转换为可执行的                                 Robotium  测试
                 脚本重放用户操作, 还允许在捕获用户交互时插入断言以验证安卓                      UI 组件的输出, 并实现了一个支持工具来展示
                 该方法的实用性.
                    移动应用需要在多个操作系统            (如安卓、iOS、鸿蒙等) 上运行, 以满足不同用户的需求. 不同平台的界面元
                 素、系统行为和兼容性各异, 导致单一平台上的测试不足以保证软件在所有平台上的一致性和可靠性                                  [14]  . 通过跨
                 平台录制回放技术, 测试人员可以在一个平台上录制测试脚本, 然后在其他平台上重放这些脚本, 从而验证应用在
                 不同操作系统上的功能和表现. 这不仅节省了时间和资源, 还提高了测试覆盖率和效率                            [15]  . 传统的录制与回放方
                 法主要依赖于小部件匹配技术, 但在不同设备和平台上, 由于视觉细节的微小差异, 这些方法的有效性受到限制.
                 为了减少为每个平台单独编写测试用例的时间和精力, Zhang                 等人  [16]  据此提出了一种改进的跨平台录制与回放方
                 法  ReSPlay, 通过分析并匹配录制过程中捕获的          GUI 序列, 确保在回放时能够准确定位和操作目标小部件, 解决了
                 不同平台和分辨率设备上的小部件匹配问题, 有效解决了传统方法在面对视觉细节差异时的局限性, 提高了录制
                 与回放的有效性. Alégroth    等人  [17]  制作了一款名为  JAutomate 的  VGT  工具, 通过结合图像识别与记录和回放功
                 能, 提供了高系统级的测试自动化. Ji 等人         [18]  首次开展了对基于视觉的控件映射在跨平台            GUI 测试迁移中的应用
                 进行全面研究, 结果表明现有方法尚有改进空间, 还需更复杂算法的处理.
                    在现代软件开发中, 应用往往具有相似或共享的功能模块, 如登录、支付、数据输入等. 鸿蒙操作系统作为一
                 款面向全场景智慧生活的分布式操作系统, 进一步增强了这一特点. 其独特的分布式架构和能力使得跨设备、跨
                 应用的无缝协同和资源共享成为可能. 跨应用和跨设备的录制回放技术在鸿蒙系统中尤为重要, 因为它允许这些
                 共性功能的测试用例在多个应用和设备之间共享和重用, 从而显著提高测试覆盖率, 确保所有相关应用的核心功
   73   74   75   76   77   78   79   80   81   82   83