ChatPaper.aiChatPaper

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%. Более того, полевое применение в Meituan показало практическую применимость AUITestAgent, обнаружив 4 новых функциональных ошибки в ходе 10 регрессионных тестов за два месяца.
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

PDF52November 28, 2024