Loading...

Test case prioritization using test case diversification and fault-proneness estimations

Mahdieh, M ; Sharif University of Technology | 2022

114 Viewed
  1. Type of Document: Article
  2. DOI: 10.1007/s10515-022-00344-y
  3. Publisher: Springer , 2022
  4. Abstract:
  5. Regression testing activities greatly reduce the risk of faulty software release. However, the size of the test suites grows throughout the development process, resulting in time-consuming execution of the test suite and delayed feedback to the software development team. This has urged the need for approaches such as test case prioritization (TCP) and test-suite reduction to reach better results in case of limited resources. In this regard, proposing approaches that use auxiliary sources of data such as bug history can be interesting. We aim to propose an approach for TCP that takes into account test case coverage data, bug history, and test case diversification. To evaluate this approach we study its performance on real-world open-source projects. The bug history is used to estimate the fault-proneness of source code areas. The diversification of test cases is preserved by incorporating fault-proneness on a clustering-based approach scheme. The proposed methods are evaluated on datasets collected from the development history of five real-world projects including 357 versions in total. The experiments show that the proposed methods are superior to coverage-based TCP methods. The proposed approach shows that improvement of coverage-based and fault-proneness-based methods is possible by using a combination of diversification and fault-proneness incorporation. © 2022, The Author(s), under exclusive licence to Springer Science+Business Media, LLC, part of Springer Nature
  6. Keywords:
  7. Open source software ; Open systems ; Software testing ; Testing ; Transmission control protocol ; Bug history ; Defect prediction ; Development process ; Fault-proneness ; Fault-proneness estimation ; Regression testing ; Software release ; Test case ; Test case diversification ; Test case prioritization ; Software design
  8. Source: Automated Software Engineering ; Volume 29, Issue 2 , 2022 ; 09288910 (ISSN)
  9. URL: https://link.springer.com/article/10.1007/s10515-022-00344-y