Recently, at MODELS 2012, we (Jordi and myself, Carlos González) had the opportunity to present our work titled “ATLTest: A White-Box Test Generation Approach for ATL Model Transformations”. As the title suggests, it’s a technique to generate input test models out of the analysis of the internals (white-box approach) of an ATL transformation. The idea is that these models can be later on used when testing the model transformation to get more accurate results about the “quality” of the transformation. Given the importance of model transformations (used in many different applications in MDE), some assurance about their correctness is needed. This testing approach complements our other formal verification approaches.
ATLTest is somehow influenced by traditional white-box test generation approaches, which usually can be seen as a 2-step process; first, the information considered relevant for the test data generation phase is abstracted from the source code of the system under analysis and then, in a second stage, the actual test data are generated out of the analysis of the information abstracted in the previous stage. This is done with the help of some type of coverage criterion that drives the process.
Like traditional white-box approaches, ATLTest also includes a first phase where some data are abstracted, in this case, from the model transformation internals, and a second stage, where the abstracted data are analyzed according to the directions of a given coverage criterion. One of the main differences compared to traditional approaches is, though, that the second stage in ATLTest doesn’t yield any input test models, but a set of OCL constraints that the prospective set of input test models must fulfill. It’s in an additional third stage when the actual input test models fulfilling these OCL constraints are generated. This is done by running EMFtoCSP over the source metamodel of the model transformation analyzed, enriched with the OCL constraints obtained in the previous stage.
If you want to find out more on this you can check out either our MODELS paper or the slides we used during our presentation.
EMFtoCSP site: http://code.google.com/a/eclipselabs.org/p/emftocsp/
EMFtoCSP paper: http://hal.inria.fr/hal-00688039
ATLTest paper: http://hal.inria.fr/hal-00711819