AUITestAgent:自動需求導向GUI功能測試
AUITestAgent: Automatic Requirements Oriented GUI Function Testing
July 12, 2024
作者: Yongxiang Hu, Xuan Wang, Yingchuan Wang, Yu Zhang, Shiyu Guo, Chaoyi Chen, Xin Wang, Yangfan Zhou
cs.AI
摘要
圖形使用者介面(GUI)是用戶與移動應用程序互動的方式。為確保其正常運作,測試工程師必須確保其按照測試要求正常運作,這些要求通常以自然語言書寫。儘管廣泛採用手動測試和基於腳本的方法是有效的,但由於現代移動應用程序中 GUI 頁面眾多且迭代速度快,因此需要大量努力。本文介紹了 AUITestAgent,這是第一個自動化、以自然語言驅動的 GUI 測試工具,適用於移動應用程序,能夠完全自動化 GUI 互動和功能驗證的整個過程。由於測試要求通常包含互動命令和驗證標準,AUITestAgent 可以通過動態組織代理從測試要求中提取 GUI 互動。然後,AUITestAgent採用多維數據提取策略從互動跟踪中檢索與測試要求相關的數據並執行驗證。在定制基準測試上的實驗表明,AUITestAgent 在生成的 GUI 互動質量方面優於現有工具,並實現了 94% 的驗證準確度。此外,在美團的現場部署中,AUITestAgent 的實際可用性得到展示,它在兩個月內的 10 次回歸測試中檢測到 4 個新的功能性錯誤。
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