Computer Science and Engineering, Department of


Date of this Version



2013 IEEE Sixth International Conference on Software Testing, Verification and Validation, Pages: 292 - 301, DOI: 10.1109/ICST.2013.34


Copyright © 2013 IEEE. Used by permission.


Regression test selection (RTS) techniques attempt to reduce regression testing costs by selecting a subset of a software system’s test cases for use in testing changes made to that system. In practice, RTS techniques may select inordinately large sets of test cases, particularly when applied to industrial systems such as those developed at ABB, where code changes may have far-reaching impact. In this paper, we present a new RTS technique that addresses this problem by focusing on specific classes of faults that can be detected by internal oracles – oracles (rules) that enforce constraints on system states during system execution. Our technique uses program chopping to identify code changes that are relevant to internal oracles, and selects test cases that cover these changes. We present the results of an empirical study that show that our technique is more effective and efficient than other RTS techniques, relative to the classes of faults targeted by the internal oracles.