Source-Code Level Regression Test Selection: the Model-Driven Way

Thibault Béziers la Fosse, Jean-Marie Mottu, Massimo Tisi, Sunyé Sunyé
2019 Journal of Object Technology  
In order to ensure that existing functionalities have not been impacted by recent program changes, test cases are regularly executed during regression testing (RT) phases. The RT time becomes problematic as the number of test cases is growing. Regression test selection (RTS) aims at running only the test cases that have been impacted by recent changes. RTS reduces the duration of regression testing and hence its cost. In this paper, we present a model-driven approach for RTS. Execution traces
more » ... e gathered at runtime, and injected in a static source-code model. We use this resulting model to identify and select all the test cases that have been impacted by changes between two revisions of the program. Our MDE approach allows modularity in the granularity of changes considered. In addition, it offers better reusability than existing RTS techniques: the trace model is persistent and standardised. Furthermore, it enables more interoperability with other model-driven tools, enabling further analysis at different levels of abstraction (e.g. energy consumption). We evaluate our approach by applying it to four well-known opensource projects. Results show that our MDE proposal can effectively reduce the execution time of RT, by up to 32 % in our case studies. The overhead induced by the model building makes our approach slower than dedicated RTS tools, but the reuse of trace models for further analysis is overtaking this time difference.
doi:10.5381/jot.2019.18.2.a13 fatcat:egsoc7llf5ewbi56rmvsivnusm