http://lattes.cnpq.br/4483720738278386; SOUZA FILHO, Ednaldo Dilorenzo de.
Abstract:
The use of agile methodologies for software development has increased significantly in recent years, bringing many changes to the traditional model. These changes had a great impact on the way the tests are developed and executed, since the responsibility for the quality of the final product, and thus the execution of activities related to tests, belongs to the whole team. However, despite the benefits achieved, such as the customer’s quick feedback regarding the product, agile methodologies also present many challenges for the development and execution of tests such as the high quantity and types of tests that must be performed in the short period of an iteration. In addition, members of agile teams often neglect to estimate test execution when planning iterations, thus causing the product to be delivered without the expected quality or even its delivery postponed. These challenges are harder when the development team is inexperienced. In this work, the objective is to design an approach for recommending test cases in agile projects based on Scrum. The approach compares User Stories being developed with those in a generated database containing 217 User Stories and 1077 test cases from two companies to find which ones have the most significant similarities. The approach then recommends test cases associated with more similar User Stories to allow the tester to reuse them. In order to find the best configuration for the recommendation system, the F-measure (β) metric was considered, adding relevance to the recall and not discarding the precision, since, in this context, the recall is more important. Given the best configuration, we developed a tool called TestRec to identify the solution viability. To validate our approach, we collected 177 User Stories from three agile projects and compared the test cases developed by project testers against the ones recommended by TestRec. The results showed that, using our approach, the testers could reuse 65.09% of the developed test cases, as well as increase their test suite in 38.79%.