中文

基于GUI图像与代码理解的移动应用测试脚本意图生成

软件工程 2025-03-04 v3

摘要

测试是保证软件质量最直接有效的技术。由于移动应用(app)具有 GUI 密集与事件驱动的特性,在移动 app 测试中测试脚本相较于源代码测试用例总是扮演更重要的角色。测试脚本关注用户交互及相应响应事件,这对测试目标 app 功能具有重要意义。因此,理解测试脚本对于更好的脚本维护与修改至关重要。现有一些成熟的代码理解(即代码注释生成)技术可直接应用于具有业务逻辑的功能源代码。然而,此类技术应用于测试脚本时会遇到困难,因为测试脚本通过控件选择器与被测 app(AUT)松散关联,且自身不包含业务逻辑。为解决测试脚本理解缺口,本文提出一种新方法,即 TestIntention,用于推断 GUI 测试脚本的意图。测试意图指针对特定操作的 app 行为的用户期望。TestIntention 以操作序列模型形式化测试脚本。对于序列中每个操作,TestIntention 提取目标控件选择器并将选择器关联至 GUI 布局信息或相应响应事件。对于由 XPath 标识的控件,TestIntention 利用图像理解技术探索控件图像的详细信息,并用深度学习模型理解其意图。对于由 ID 标识的控件,TestIntention 首先将选择器映射至具业务逻辑的响应方法,然后采用代码理解技术以自然语言形式描述代码。所有操作的结果被组合以生成测试脚本的测试意图。

关键词

引用

@article{arxiv.2107.05165,
  title  = {Test Script Intention Generation for Mobile Application via GUI Image and Code Understanding},
  author = {Shengcheng Yu and Chunrong Fang and Jia Liu and Zhenyu Chen},
  journal= {arXiv preprint arXiv:2107.05165},
  year   = {2025}
}

备注

Accepted by ACM Transactions on Software Engineering and Methodology (TOSEM) in March 2025