Test Case Prioritization in Continuous Integration environments: A systematic mapping study

被引:59
|
作者
Prado Lima, Jackson A. [1 ]
Vergilio, Silvia R. [1 ]
机构
[1] Fed Univ Parana UFPR, Dept Informat, CP 19081, BR-81531980 Curitiba, Parana, Brazil
关键词
Software testing; Continuous Integration; Test Case Prioritization; REGRESSION TEST PRIORITIZATION; SELECTION; DELIVERY; SEARCH; WELL;
D O I
10.1016/j.infsof.2020.106268
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Context Continuous Integration (CI) environments allow frequent integration of software changes, making software evolution more rapid and cost-effective. In such environments, the regression test plays an important role, as well as the use of Test Case Prioritization (TCP) techniques. Such techniques attempt to identify the test case order that maximizes certain goals, such as early fault detection. This research subject has been raising interest because some new challenges are faced in the CI context, as TCP techniques need to consider time constraints of the CI environments. Objective: This work presents the results of a systematic mapping study on Test Case Prioritization in Continuous Integration environments (TCPCI) that reports the main characteristics of TCPCI approaches and their evaluation aspects. Method: The mapping was conducted following a plan that includes the definition of research questions, selection criteria and search string, and the selection of search engines. The search returned 35 primary studies classified based on the goal and kind of used TCP technique, addressed CI particularities and testing problems, and adopted evaluation measures. Results: The results show a growing interest in this research subject. Most studies have been published in the last four years. 80% of the approaches are history-based, that is, are based on the failure and test execution history. The great majority of studies report evaluation results by comparing prioritization techniques. The preferred measures are Time and number/percentage of Faults Detected. Few studies address CI testing problems and characteristics, such as parallel execution and test case volatility. Conclusions: We observed a growing number of studies in the field. Future work should explore other information sources such as models and requirements, as well as CI particularities and testing problems, such as test case volatility, time constraint, and flaky tests, to solve existing challenges and offer cost-effective approaches to the software industry.
引用
收藏
页数:16
相关论文
共 50 条
  • [31] A Systematic Literature Review on Regression Test Case Prioritization
    Rahmani, Ani
    Ahmad, Sabrina
    Jalil, Intan Ermahani A.
    Herawan, Adhitia Putra
    INTERNATIONAL JOURNAL OF ADVANCED COMPUTER SCIENCE AND APPLICATIONS, 2021, 12 (09) : 253 - 267
  • [32] Regression Test Case Prioritization: A Systematic Literature Review
    Samad, Ali
    Mahdin, Hairulnizam
    Kazmi, Rafaqut
    Ibrahim, Rosziati
    INTERNATIONAL JOURNAL OF ADVANCED COMPUTER SCIENCE AND APPLICATIONS, 2021, 12 (02) : 655 - 663
  • [33] Requirements Prioritization in Software Engineering: A Systematic Mapping Study
    Pergher, Massimiliano
    Rossi, Bruno
    2013 IEEE THIRD INTERNATIONAL WORKSHOP ON EMPIRICAL REQUIREMENTS ENGINEERING (EMPIRE), 2013, : 40 - 44
  • [34] Understanding requirement prioritization artifacts: a systematic mapping study
    Rahul Thakurta
    Requirements Engineering, 2017, 22 : 491 - 526
  • [36] CIBench: A Dataset and Collection of Techniques for Build and Test Selection and Prioritization in Continuous Integration
    Jin, Xianhao
    Servant, Francisco
    2021 IEEE/ACM 43RD INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING: COMPANION PROCEEDINGS (ICSE-COMPANION 2021), 2021, : 166 - 167
  • [37] Test Case Prioritization Techniques "An Empirical Study"
    Sharma, Neha
    Sujata
    Purohit, G. N.
    2014 INTERNATIONAL CONFERENCE ON HIGH PERFORMANCE COMPUTING AND APPLICATIONS (ICHPCA), 2014,
  • [38] A Systematic Literature Review on Test Case Prioritization in Combinatorial Testing
    Manan, Muhammad Syafiq Abdul
    Jawawi, Dayang Norhayati Abang
    Ahmad, Johanna
    5TH INTERNATIONAL CONFERENCE ON ALGORITHMS, COMPUTING AND SYSTEMS, ICACS 2021, 2021, : 55 - 61
  • [39] Effectiveness of Test-Driven Development and Continuous Integration A Case Study
    Amrit, Chintan
    Meijberg, Yoni
    IT PROFESSIONAL, 2018, 20 (01) : 27 - 35
  • [40] Learning for Test Prioritization: An Industrial Case Study
    Busjaeger, Benjamin
    Xie, Tao
    FSE'16: PROCEEDINGS OF THE 2016 24TH ACM SIGSOFT INTERNATIONAL SYMPOSIUM ON FOUNDATIONS OF SOFTWARE ENGINEERING, 2016, : 975 - 980