An Extensive Study of Static Regression Test Selection in Modern Software Evolution

被引:87
|
作者
Legunsen, Owolabi [1 ]
Hariri, Farah [1 ]
Shi, August [1 ]
Lu, Yafeng [2 ]
Zhang, Lingming [2 ]
Marinov, Darko [1 ]
机构
[1] Univ Illinois, Dept Comp Sci, Champaign, IL 61801 USA
[2] Univ Texas Dallas, Dept Comp Sci, Richardson, TX 75083 USA
关键词
regression test selection; static analysis; class firewall;
D O I
10.1145/295029.2950361
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Regression test selection (RTS) aims to reduce regression testing time by only re-running the tests affected by code changes. Prior research on RTS can be broadly split into dynamic and static techniques. A recently developed dynamic RTS technique called Ekstazi is gaining some adoption in practice, and its evaluation shows that selecting tests at a coarser, class-level granularity provides better results than selecting tests at a finer, method-level granularity. As dynamic RTS is gaining adoption, it is timely to also evaluate static RTS techniques, some of which were proposed over three decades ago but not extensively evaluated on modern software projects. This paper presents the first extensive study that evaluates the performance benefits of static RTS techniques and their safety; a technique is safe if it selects to run all tests that may be affected by code changes. We implemented two static RTS techniques, one class-level and one method-level, and compare several variants of these techniques. We also compare these static RTS techniques against Ekstazi, a state-of-the-art, class-level, dynamic RTS technique. The experimental results on 985 revisions of 22 open-source projects show that the class-level static RTS technique is comparable to Ekstazi, with similar performance benefits, but at the risk of being unsafe sometimes. In contrast, the method-level static RTS technique performs rather poorly.
引用
收藏
页码:583 / 594
页数:12
相关论文
共 50 条
  • [1] STARTS: STAtic regression test selection
    Legunsen, Owolabi
    Shi, August
    Marinov, Darko
    ASE 2017 - Proceedings of the 32nd IEEE/ACM International Conference on Automated Software Engineering, 2017, : 949 - 954
  • [2] STARTS: STAtic Regression Test Selection
    Legunsen, Owolabi
    Shi, August
    Marinov, Darko
    PROCEEDINGS OF THE 2017 32ND IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING (ASE'17), 2017, : 949 - 954
  • [3] Regression test selection for Java software
    College of Computing, Georgia Institute of Technology, Atlanta
    GA, United States
    不详
    FL, United States
    ACM SIGPLAN Not., 11 (312-326):
  • [4] Regression test selection for AspectJ software
    Xu, Guoqing
    Rountev, Atanas
    ICSE 2007: 29TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING, PROCEEDINGS, 2007, : 65 - +
  • [5] How Do Static and Dynamic Test Case Prioritization Techniques Perform on Modern Software Systems? An Extensive Study on GitHub Projects
    Luo, Qi
    Moran, Kevin
    Zhang, Lingming
    Poshyvanyk, Denys
    IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2019, 45 (11) : 1054 - 1080
  • [6] Speeding up Mutation Testing via Regression Test Selection: An Extensive Study
    Chen, Lingchao
    Zhang, Lingming
    2018 IEEE 11TH INTERNATIONAL CONFERENCE ON SOFTWARE TESTING, VERIFICATION AND VALIDATION (ICST), 2018, : 58 - 69
  • [7] A Regression Test Selection Technique for Embedded Software
    Biswas, Swarnendu
    Mall, Rajib
    Satpathy, Manoranjan
    ACM TRANSACTIONS ON EMBEDDED COMPUTING SYSTEMS, 2013, 13 (03)
  • [8] Regression test selection for C++ software
    Rothermel, G
    Harrold, MJ
    Dedhia, J
    SOFTWARE TESTING VERIFICATION & RELIABILITY, 2000, 10 (02): : 77 - 109
  • [9] Regression test selection for C++ software
    Rothermel, Gregg
    Harrold, Mary Jean
    Dedhia, Jeinay
    Software Testing Verification and Reliability, 2000, 10 (02) : 77 - 109
  • [10] Regression test selection for Java']Java software
    Harrold, MJ
    Jones, JA
    Li, TY
    Liang, DL
    Orso, A
    Pennings, M
    Sinha, S
    Spoon, SA
    Gujarathi, A
    ACM SIGPLAN NOTICES, 2001, 36 (11) : 312 - 326