AUITestAgent : Test fonctionnel automatisé des interfaces graphiques orienté par les exigences
AUITestAgent: Automatic Requirements Oriented GUI Function Testing
July 12, 2024
Auteurs: Yongxiang Hu, Xuan Wang, Yingchuan Wang, Yu Zhang, Shiyu Guo, Chaoyi Chen, Xin Wang, Yangfan Zhou
cs.AI
Résumé
L'interface graphique utilisateur (GUI) est le moyen par lequel les utilisateurs interagissent avec les applications mobiles. Pour s'assurer qu'elle fonctionne correctement, les ingénieurs de test doivent vérifier qu'elle se comporte comme prévu, en se basant sur des exigences de test généralement rédigées en langage naturel. Bien que les méthodes de test manuel et basées sur des scripts, largement adoptées, soient efficaces, elles nécessitent un effort considérable en raison du grand nombre de pages d'interface graphique et des itérations rapides dans les applications mobiles modernes. Cet article présente AUITestAgent, le premier outil de test d'interface graphique entièrement automatisé et piloté par le langage naturel pour les applications mobiles, capable d'automatiser l'intégralité du processus d'interaction avec l'interface graphique et de vérification des fonctionnalités. Étant donné que les exigences de test contiennent généralement des commandes d'interaction et des oracles de vérification, AUITestAgent peut extraire les interactions avec l'interface graphique à partir des exigences de test via des agents organisés dynamiquement. Ensuite, AUITestAgent utilise une stratégie d'extraction de données multidimensionnelle pour récupérer les données pertinentes par rapport aux exigences de test à partir de la trace d'interaction et effectuer la vérification. Les expériences sur des benchmarks personnalisés démontrent qu'AUITestAgent surpasse les outils existants en termes de qualité des interactions générées avec l'interface graphique et atteint une précision de vérification de 94 %. De plus, le déploiement sur le terrain chez Meituan a montré l'utilité pratique d'AUITestAgent, avec la détection de 4 nouveaux bugs fonctionnels lors de 10 tests de régression en deux mois.
English
The Graphical User Interface (GUI) is how users interact with mobile apps. To
ensure it functions properly, testing engineers have to make sure it functions
as intended, based on test requirements that are typically written in natural
language. While widely adopted manual testing and script-based methods are
effective, they demand substantial effort due to the vast number of GUI pages
and rapid iterations in modern mobile apps. This paper introduces AUITestAgent,
the first automatic, natural language-driven GUI testing tool for mobile apps,
capable of fully automating the entire process of GUI interaction and function
verification. Since test requirements typically contain interaction commands
and verification oracles. AUITestAgent can extract GUI interactions from test
requirements via dynamically organized agents. Then, AUITestAgent employs a
multi-dimensional data extraction strategy to retrieve data relevant to the
test requirements from the interaction trace and perform verification.
Experiments on customized benchmarks demonstrate that AUITestAgent outperforms
existing tools in the quality of generated GUI interactions and achieved the
accuracy of verifications of 94%. Moreover, field deployment in Meituan has
shown AUITestAgent's practical usability, with it detecting 4 new functional
bugs during 10 regression tests in two months.Summary
AI-Generated Summary