基于抽象与具体化的GUI测试迁移
软件工程
2025-07-18 v2 计算与语言
摘要
GUI测试迁移旨在生成用于测试目标应用特定功能的事件和断言的测试用例。现有的迁移方法通常侧重于小部件映射范式,即将源应用中的小部件映射到目标应用中。然而,由于不同应用可能以不同方式实现相同的功能,直接映射可能导致测试用例不完整或存在缺陷,从而显著影响测试目标功能的有效性以及迁移方法的实际适用性。在本文中,我们提出了一种新的迁移范式,即抽象-具体化范式,首先抽象出用于测试目标功能的测试逻辑,然后利用该逻辑生成具体的GUI测试用例。进一步地,我们引入了MACdroid——首个基于该范式迁移GUI测试用例的方法。具体地,我们提出了一种抽象技术,利用针对同一功能的源应用中源测试用例来提取该功能的通用测试逻辑。然后,我们提出了一种具体化技术,利用该通用测试逻辑指导LLM为目标应用生成相应的GUI测试用例(包括事件和断言)。我们在两个广泛使用的数据集上对MACdroid进行了评估(包括31个应用、34个功能和123个测试用例)。在FrUITeR数据集上,MACdroid生成的测试用例成功测试了64%的目标功能,相较于基线提升了191%。在Lin数据集上,MACdroid成功测试了75%的目标功能,超过基线42%。这些结果凸显了MACdroid在GUI测试迁移中的有效性。
引用
@article{arxiv.2409.05028,
title = {GUI Test Migration via Abstraction and Concretization},
author = {Yakun Zhang and Chen Liu and Xiaofei Xie and Yun Lin and Jin Song Dong and Dan Hao and Lu Zhang},
journal= {arXiv preprint arXiv:2409.05028},
year = {2025}
}
备注
This paper has been accepted for publication in ACM Transactions on Software Engineering and Methodology (TOSEM) in 2025. The official publication link is: https://dl.acm.org/doi/10.1145/3726525