AUITestAgent: Automatisches Anforderungsorientiertes GUI-Funktionstesten
AUITestAgent: Automatic Requirements Oriented GUI Function Testing
July 12, 2024
Autoren: Yongxiang Hu, Xuan Wang, Yingchuan Wang, Yu Zhang, Shiyu Guo, Chaoyi Chen, Xin Wang, Yangfan Zhou
cs.AI
Zusammenfassung
Die grafische Benutzeroberfläche (GUI) ist die Art und Weise, wie Benutzer mit mobilen Apps interagieren. Um sicherzustellen, dass sie ordnungsgemäß funktioniert, müssen Testingenieure sicherstellen, dass sie gemäß den Testanforderungen funktioniert, die in der Regel in natürlicher Sprache verfasst sind. Obwohl weit verbreitete manuelle Tests und skriptbasierte Methoden effektiv sind, erfordern sie erheblichen Aufwand aufgrund der großen Anzahl von GUI-Seiten und schnellen Iterationen in modernen mobilen Apps. Dieses Papier stellt AUITestAgent vor, das erste automatische, natürlichsprachengesteuerte GUI-Testwerkzeug für mobile Apps, das in der Lage ist, den gesamten Prozess der GUI-Interaktion und Funktionsüberprüfung vollständig zu automatisieren. Da Testanforderungen in der Regel Interaktionsbefehle und Verifikationsorakel enthalten, kann AUITestAgent GUI-Interaktionen aus Testanforderungen über dynamisch organisierte Agenten extrahieren. Anschließend verwendet AUITestAgent eine multidimensionale Datenextraktionsstrategie, um relevante Daten für die Testanforderungen aus dem Interaktionsverlauf abzurufen und Verifikationen durchzuführen. Experimente an angepassten Benchmarks zeigen, dass AUITestAgent die bestehenden Tools in der Qualität der generierten GUI-Interaktionen übertrifft und eine Verifikationsgenauigkeit von 94% erreicht. Darüber hinaus hat der Feldversuch bei Meituan die praktische Nutzbarkeit von AUITestAgent gezeigt, indem er während von zwei Monaten 10 Regressionstests durchgeführt hat und dabei 4 neue funktionale Fehler entdeckt hat.
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