Iterative Deepening URL-Based Search: Enhancing GUI Testing for Web Applications - Moura, Thiago Santos de; Felipe, Regina Letícia Santos; Alves, Everton L. G.; Gregório, Pedro Henrique S. C.; Baptista, Cláudio de Souza; Figueirêdo, Hugo Feitosa de (Anais do Simpósio Brasileiro de Engenharia de Software (SBES); 2024: Anais do XXXVIII Simpósio Brasileiro de Engenharia de SoftwareDO - 10.5753/sbes.2024.3363, 2024)
Automated GUI testing has become prevalent in web applications due to its efficiency in detecting visible failures. In this context, scriptless testing can systematically explore the application GUI. To achieve this, a GUI tree can be employed to generate test cases. Algorithms such as IDS can iteratively discover the GUI tree of an application while generating the test suite. However, the resulting suite in such scenarios is often redundant, leading to long execution times. This paper introduces the IDUBS algorithm, an optimized version of IDS that aims to reduce redundancies in state access by identifying URL changes during system exploration. It utilizes this information to streamline path discovery for automatic GUI testing. By employing IDUBS, repetitive actions can be replaced with direct URL visits, resulting in faster retrieval of previous GUI states in subsequent iterations and consequently reducing test costs for test suite execution while maintaining performance. We evaluated the performance of IDUBS in two empirical studies involving twenty industrial and four open-source web applications, comparing it with the baseline strategy (IDS). Our results showed that IDUBS achieved a general reduction in execution time and test case redundancy by 43.41% and 49.30%, respectively, while maintaining code coverage. Additionally, IDUBS suites detected more faults, demonstrating improved performance.