Work

Optimizing the creation and maintenance of automated end-to-end tests for web application testing

Year: 2025
Type: dissertation
Study design: Systematic Review
Abstract: Effective and reliable quality control is increasingly relevant as dependencies to web applications grow. End-to-end testing enables thorough validation of different application flows, forming an important layer in the testing of web applications. However, creating and maintaining end-to-end tests can be expensive, and multiple methods of creation exist. Modern web development is often conducted in an agile development environment, whose nature and practicalities also impact the development of end-to-end tests. In addition, the rise and widespread adoption of generative artificial intelligence significantly changes the way software development is carried out. This also affects the development of end-to-end tests. This Bachelor's thesis investigated what approach of creating end-to-end tests minimizes the cost of their creation and maintenance without sacrificing quality control in an agile development environment, along with how this method can be supported with the use of large language models. The study is a semi-systematic literature review. From an initial keyword-based database search yielding 208 articles, 35 were selected through abstract screening, with a subsequent full-text review identifying 11 for qualitative analysis. The results show that programmable testing is the most cost-effective method to create and maintain end-to-end tests in an agile development environment. The strengths of programmable testing, including the advantages in maintainability, powerful testing constructs, and the maturity of existing libraries and tools, allow it to be the optimal solution despite the high initial cost of development. Furthermore, the results indicate that the use of large language models can significantly decrease the initial development costs of programmable end-to-end tests compared to a completely manual approach. However, the effectiveness of their benefits depends significantly on the prompting technique used. Iterative prompting techniques yield better results. Based on the results, it can be suggested that developers in agile development environments should use programmable testing for the creation and maintenance of end-to-end tests. In addition, the development of natural language -based testing should be followed as it shows potential but is not yet mature enough. The use of large language models can significantly decrease the initial development costs of programmable end-to-end testing. Nevertheless, it is important to deliberately use code generated by large language models, without compromising quality control and while maintaining the skills of human engineers.
Author: Maunu, Tatu
Language: English
Subfield: Software
Open Access status: green
OpenAlex ID: W7070247141
Cites: 21
Cited by:
Related to: 10