Elevating Software Quality in Agile Environments: The Role of Testing Professionals in Unit Testing

Lucas Neves,Oscar Campos,Robson Santos,Italo Santos,Cleyton Magalhaes,Ronnie de Souza Santos
2024-03-20
Abstract:Testing is an essential quality activity in the software development process. Usually, a software system is tested on several levels, starting with unit testing that checks the smallest parts of the code until acceptance testing, which is focused on the validations with the end-user. Historically, unit testing has been the domain of developers, who are responsible for ensuring the accuracy of their code. However, in agile environments, testing professionals play an integral role in various quality improvement initiatives throughout each development cycle. This paper explores the participation of test engineers in unit testing within an industrial context, employing a survey-based research methodology. Our findings demonstrate that testing professionals have the potential to strengthen unit testing by collaborating with developers to craft thorough test cases and fostering a culture of mutual learning and cooperation, ultimately contributing to increasing the overall quality of software projects.
Computer Science
What problem does this paper attempt to address?
The problem that this paper attempts to solve is: In an agile development environment, how can testing professionals participate in unit testing to improve its effectiveness and efficiency? Specifically, traditional unit testing is mainly the responsibility of developers, and this article explores the role of testing professionals (such as test engineers, test analysts, and quality assurance engineers) in unit testing. Through investigation and research, the author aims to understand how testing professionals contribute to unit testing in an industrial context and analyze the potential impact of this collaboration on the quality of software projects. The core research questions of the paper are as follows: **RQ: How do testing professionals contribute to the effectiveness and efficiency of unit testing in the software development process?** To answer this question, the author adopted a survey - based research method, collected feedback from 48 testing professionals in different countries, analyzed their theoretical knowledge and practical experience in unit testing, as well as their potential and challenges in cooperating with developers. The research results show that the participation of testing professionals can significantly enhance the quality of unit testing, especially in designing comprehensive test cases, selecting appropriate test data, and promoting mutual learning among developers. However, there are also some obstacles, such as lack of practical experience, management decisions, and time constraints, which may prevent testing professionals from participating more widely in unit testing activities. In conclusion, this paper aims to explore the role of testing professionals in unit testing through empirical research, emphasize their important role in improving software quality, and provide guidance for future practice and research.