Regression testing is an expensive process used to validate modified software. Test case prioritization techniques improve the costeffectiveness of regression testing by ordering test cases such that those that are more important are run earlier in the testing process. Many prioritization techniques have been proposed and evidence shows that they can be beneficial. It has been suggested, however, that the time constraints that can be imposed on regression testing by various software development processes can strongly affect the behavior of prioritization techniques. Therefore, we conducted an experiment to assess the effects of time constraints on the costs and benefits of prioritization techniques. Our results show that time constraints can indeed play a significant role in determining both the cost-effectiveness of prioritization, and the relative cost-benefit tradeoffs among techniques, with important implications for the use of prioritization in practice.
Do et al. REF investigate the use of techniques not specific to time constraints in the presence of those constraints.
An empirical study of the effect of time constraints on the cost-benefits of regression testing
SIGSOFT '08/FSE-16
Materials Science Computer Science