Page 90 - 《软件学报》2025年第12期
P. 90
虞圣呈 等: 基于大模型语义匹配的跨平台移动应用测试脚本录制回放 5471
行回放. MAPIT 的基本思路是在一个平台上通过规范的语言编写对应的测试脚本, 然后利用它提供的工具, 在源平
台上运行一遍脚本, 在运行的过程中, 生成中间测试文件, 主要存储操作的组件相关信息以及屏幕内其他组件的信息.
所生成的中间测试文件与平台无关, 所以通过 MAPIT 和中间测试文件, 可以在任意平台上进行回放, 达到跨平台回
放的目的. AppTestMigrator 是一种具有典型代表意义的跨应用测试迁移工具, 其可在相似应用中迁移面向待测应用
共享功能的测试脚本. 实验中所涉及 4 种方法均运行于同样的脚本数据集中, 以保证实验结果的可比较性. 因本方法
考虑到跨平台脚本回放步骤的不一致性, 所涉及实验脚本与 LIRAT、MAPIT 及 AppTestMigrator 方法中评估数据
集不相同; 由于上述 3 种基线方法未考虑跨平台回放不一致性, 实验结果所展示的回放成功率也与原论文存在波动.
表 2 实验评估应用
序号 名称 类别 序号 名称 类别
1 AdGuard 系统 11 Linphone 通信
2 BingSearch 工具 12 MatomoMob 开发
3 Booking 购物 13 McDonald 购物
4 Evernote 工具 14 Monkey 开发
5 Investing 财务 15 OpenHAB 网络
6 Jamendo 媒体 16 OsmAnd 地图
7 Keep 运动 17 QQ Music 媒体
8 KFC 购物 18 Taobao 购物
9 Kindle 工具 19 VLC 媒体
10 Kiwix 网络 20 WikiPedia 网络
对于实验过程中所使用的大模型, 我们采用了 GPT-4o 模型, 并将参数 temperature 设置为 0, 以保证大模型产
生确定且一致的输出. 在实验中, 我们也统计了大模型 Token 开销. 对于方法 LLMRR 而言, 平均回放一个脚本
Token 的开销为 39 154 个. 我们也将使用的提示词模版公开在 GitLink 的在线仓库中, 以供后续研究参考 (https://
gitlink.org.cn/yusc/LLMRR). 为保障在实验过程中顺利调用大模型能力, 我们遵循 OpenAI 所设置的调用限制, 利
用多账号协作完成了本实验.
5.2 整体结果与分析
在实验结果中, 表 3 展示了 LLMRR、LIRAT、 MAPIT 和 AppTestMigrator 这 4 种方法在不同平台间录制回
放的成功和失败情况. 注意在本文后续的表格中, I 表示 iOS, A 表示安卓, H 表示鸿蒙, 例如 I2A 表示从 iOS 系统迁
移至安卓系统.
表 3 整体录制回放实验结果
评估指标 对比方法 I2A A2I I2H H2I A2H H2A
LLMRR 65 68 62 61 65 56
LIRAT 5 6 1 6 8 11
成功脚本数
MAPIT 3 5 1 1 5 7
AppTestMigrator 18 19 18 14 16 18
LLMRR 35 32 38 39 35 44
LIRAT 95 94 99 94 92 89
失败脚本数
MAPIT 97 95 99 99 95 93
AppTestMigrator 82 81 82 86 84 82
LLMRR 65.0 68.0 62.0 61.0 65.0 56.0
LIRAT 5.0 6.0 1.0 6.0 8.0 11.0
回放成功率 (%)
MAPIT 3.0 5.0 1.0 1.0 5.0 7.0
AppTestMigrator 18.0 19.0 18.0 14.0 16.0 18.0
从表 3 中可以看出, LLMRR 方法在所有跨平台迁移路径中均表现出明显优势. 例如, 在 iOS 到安卓 (I2A) 的
迁移中, LLMRR 成功完整回放了 65 个脚本, 而 LIRAT 和 MAPIT 分别仅成功回放 5 个和 3 个脚本, AppTestMigrator

