# GUI Test Migration via Abstraction and Concretization

arXiv: https://arxiv.org/abs/2409.05028 · HTML: https://mlsanity.com/paper/2409.05028/

## Key facts

- Cited by 1 papers in the map (data through 14 Oct 2026).
- Builds on 26 of its 79 references that are in the map.
- First posted on arXiv 8 Sep 2024.

## Builds on (most cited first, 26 of 26)

- [Language Models are Few-Shot Learners](https://mlsanity.com/paper/2005.14165/) (2020)
- [Distributed Representations of Words and Phrases and their Compositionality](https://mlsanity.com/paper/1310.4546/) (2013)
- [Humans or LLMs as the Judge? A Study on Judgement Biases](https://mlsanity.com/paper/2402.10669/) (2024)
- [MEGA: Multilingual Evaluation of Generative AI](https://mlsanity.com/paper/2303.12528/) (2023)
- [AutoDroid: LLM-powered Task Automation in Android](https://mlsanity.com/paper/2308.15272/) (2023)
- [Mapping Natural Language Instructions to Mobile UI Action Sequences](https://mlsanity.com/paper/2005.03776/) (2020)
- [LLM Lies: Hallucinations are not Bugs, but Features as Adversarial Examples](https://mlsanity.com/paper/2310.01469/) (2023)
- [DroidBot-GPT: GPT-powered UI Automation for Android](https://mlsanity.com/paper/2304.07061/) (2023)
- [ASSISTGUI: Task-Oriented Desktop Graphical User Interface Automation](https://mlsanity.com/paper/2312.13108/) (2023)
- [ALGO: Synthesizing Algorithmic Programs with LLM-Generated Oracle Verifiers](https://mlsanity.com/paper/2305.14591/) (2023)
- [Prompting Is All You Need: Automated Android Bug Replay with Large Language Models](https://mlsanity.com/paper/2306.01987/) (2023)
- [AXNav: Replaying Accessibility Tests from Natural Language](https://mlsanity.com/paper/2310.02424/) (2023)
- [CoderEval: A Benchmark of Pragmatic Code Generation with Generative Pre-trained Models](https://mlsanity.com/paper/2302.00288/) (2023)
- [Reinforcement Learning for Automatic Test Case Prioritization and Selection in Continuous Integration](https://mlsanity.com/paper/1811.04122/) (2018)
- [ILuvUI: Instruction-tuned LangUage-Vision modeling of UIs from Machine Conversations](https://mlsanity.com/paper/2310.04869/) (2023)
- [Translating Video Recordings of Mobile App Usages into Replayable Scenarios](https://mlsanity.com/paper/2005.09057/) (2020)
- [Nighthawk: Fully Automated Localizing UI Display Issues via Visual Understanding](https://mlsanity.com/paper/2205.13945/) (2022)
- [How do Developers Test Android Applications?](https://mlsanity.com/paper/1801.06268/) (2018)
- [FrUITeR: A Framework for Evaluating UI Test Reuse](https://mlsanity.com/paper/2008.03427/) (2020)
- [Practical Non-Intrusive GUI Exploration Testing with Visual-based Robotic Arms](https://mlsanity.com/paper/2312.10655/) (2023)
- [Fully Automated Functional Fuzzing of Android Apps for Detecting Non-crashing Logic Bugs](https://mlsanity.com/paper/2008.03585/) (2020)
- [Guided Bug Crush: Assist Manual GUI Testing of Android Apps via Hint Moves](https://mlsanity.com/paper/2201.12085/) (2022)
- [Test Reuse Based on Adaptive Semantic Matching across Android Mobile Applications](https://mlsanity.com/paper/2301.00530/) (2023)
- [Practical, Automated Scenario-based Mobile App Testing](https://mlsanity.com/paper/2406.08340/) (2024)
- [Estimating Return on Investment for GUI Test Automation Tools](https://mlsanity.com/paper/1907.03475/) (2019)
- [An Evolutionary Approach to Adapt Tests Across Mobile Apps](https://mlsanity.com/paper/2104.05233/) (2021)

## Built on by (most cited first, 1 of 1)

- [An Empirical Study for Android-to-OpenHarmony GUI Test Migration](https://mlsanity.com/paper/2607.11245/) (2026)

## Abstract (arXiv)

GUI test migration aims to produce test cases with events and assertions to test specific functionalities of a target app. Existing migration approaches typically focus on the widget-mapping paradigm that maps widgets from source apps to target apps. However, since different apps may implement the same functionality in different ways, direct mapping may result in incomplete or buggy test cases, thus significantly impacting the effectiveness of testing target functionality and the practical applicability of migration approaches. In this paper, we propose a new migration paradigm (i.e., the abstraction-concretization paradigm) that first abstracts the test logic for the target functionality and then utilizes this logic to generate the concrete GUI test case. Furthermore, we introduce MACdroid, the first approach that migrates GUI test cases based on this paradigm. Specifically, we propose an abstraction technique that utilizes source test cases from source apps targeting the same functionality to extract a general test logic for that functionality. Then, we propose a concretization technique that utilizes the general test logic to guide an LLM in generating the corresponding GUI test case (including events and assertions) for the target app. We evaluate MACdroid on two widely-used datasets (including 31 apps, 34 functionalities, and 123 test cases). On the FrUITeR dataset, the test cases generated by MACdroid successfully test 64% of the target functionalities, improving the baselines by 191%. On the Lin dataset, MACdroid successfully tests 75% of the target functionalities, outperforming the baselines by 42%. These results underscore the effectiveness of MACdroid in GUI test migration.
