Specification-Driven Test Generation for Model Transformations

  • Esther Guerra
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7307)


Testing model transformations poses several challenges, among them the automatic generation of appropriate input test models and the specification of oracle functions. Most approaches to the generation of input models ensure a certain level of source meta-model coverage, whereas the oracle functions are frequently defined using query or graph languages. Both tasks are usually performed independently regardless their common purpose, and sometimes there is a gap between the properties exhibited by the generated input models and those demanded to the transformations (as given by the oracles).

Recently, we proposed a formal specification language for the declarative formulation of transformation properties (invariants, pre- and postconditions) from which we generated partial oracle functions that facilitate testing of the transformations. Here we extend the usage of our specification language for the automated generation of input test models by constraint solving. The testing process becomes more intentional because the generated models ensure a certain coverage of the interesting properties of the transformation. Moreover, we use the same specification to consistently derive both the input test models and the oracle functions.


Input Model Model Transformation Coverage Criterion Symbolic Execution Main Constraint 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Balogh, A., Bergmann, G., Csertán, G., Gönczy, L., Horváth, Á., Majzik, I., Pataricza, A., Polgár, B., Ráth, I., Varró, D., Varró, G.: Workflow-Driven Tool Integration Using Model Transformations. In: Engels, G., Lewerentz, C., Schäfer, W., Schürr, A., Westfechtel, B. (eds.) Nagl Festschrift. LNCS, vol. 5765, pp. 224–248. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  2. 2.
    Baudry, B., Ghosh, S., Fleurey, F., France, R.B., Traon, Y.L., Mottu, J.-M.: Barriers to systematic model transformation testing. CACM 53(6), 139–143 (2010)Google Scholar
  3. 3.
    Boyapati, C., Khurshid, S., Marinov, D.: Korat: automated testing based on Java predicates. In: ISSTA 2002, pp. 123–133 (2002)Google Scholar
  4. 4.
  5. 5.
    Cabot, J., Clarisó, R., Riera, D.: UMLtoCSP: a tool for the formal verification of UML/OCL models using constraint programming. In: ASE 2007, pp. 547–548 (2007)Google Scholar
  6. 6.
    Cariou, E., Marvie, R., Seinturier, L., Duchien, L.: OCL for the specification of model transformation contracts. In: ECEASST, vol. 12, pp. 69–83 (2004)Google Scholar
  7. 7.
    Fleurey, F., Baudry, B., Muller, P.-A., Traon, Y.: Qualifying input test data for model transformations. SOSYM 8, 185–203 (2009)CrossRefGoogle Scholar
  8. 8.
    García-Domínguez, A., Kolovos, D.S., Rose, L.M., Paige, R.F., Medina-Bulo, I.: EUnit: A Unit Testing Framework for Model Management Tasks. In: Whittle, J., Clark, T., Kühne, T. (eds.) MODELS 2011. LNCS, vol. 6981, pp. 395–409. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  9. 9.
    Giner, P., Pelechano, V.: Test-Driven Development of Model Transformations. In: Schürr, A., Selic, B. (eds.) MODELS 2009. LNCS, vol. 5795, pp. 748–752. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  10. 10.
    Gogolla, M., Vallecillo, A.: Tractable Model Transformation Testing. In: France, R.B., Kuester, J.M., Bordbar, B., Paige, R.F. (eds.) ECMFA 2011. LNCS, vol. 6698, pp. 221–235. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  11. 11.
    Guerra, E., de Lara, J., Kolovos, D., Paige, R.: A visual specification language for model-to-model transformations. In: VL/HCC 2010, pp. 119–126 (2010)Google Scholar
  12. 12.
    Guerra, E., de Lara, J., Kolovos, D., Paige, R., dos Santos, O.: Engineering model transformations with transML. Software and Systems Modeling (in press, 2012)Google Scholar
  13. 13.
    Jouault, F., Allilaire, F., Bézivin, J., Kurtev, I.: ATL: A model transformation tool. Science of Computer Programming 72(1-2), 31–39 (2008)MathSciNetzbMATHCrossRefGoogle Scholar
  14. 14.
    Kolovos, D.S., Paige, R.F., Polack, F.: The Epsilon Transformation Language. In: Vallecillo, A., Gray, J., Pierantonio, A. (eds.) ICMT 2008. LNCS, vol. 5063, pp. 46–60. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  15. 15.
    Küster, J.M., Abd-El-Razik, M.: Validation of Model Transformations – First Experiences Using a White Box Approach. In: Kühne, T. (ed.) MODELS 2006. LNCS, vol. 4364, pp. 193–204. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  16. 16.
    Lin, Y., Zhang, J., Gray, J.: A framework for testing model transformations. In: Model-driven Soft. Devel. - Research and Practice in Sof. Eng. Springer (2005)Google Scholar
  17. 17.
    Mottu, J.-M., Baudry, B., Le Traon, Y.: Mutation Analysis Testing for Model Transformations. In: Rensink, A., Warmer, J. (eds.) ECMDA-FA 2006. LNCS, vol. 4066, pp. 376–390. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  18. 18.
    Mottu, J.-M., Baudry, B., Le Traon, Y.: Reusable MDA Components: A Testing-for-Trust Approach. In: Wang, J., Whittle, J., Harel, D., Reggio, G. (eds.) MoDELS 2006. LNCS, vol. 4199, pp. 589–603. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  19. 19.
    Oster, S., Zorcic, I., Markert, F., Lochau, M.: MoSo-PoLiTe: tool support for pairwise and model-based software product line testing. In: VaMoS 2011. ACM International Conference Proceedings Series, pp. 79–82. ACM (2011)Google Scholar
  20. 20.
    Perrouin, G., Oster, S., Sen, S., Klein, J., Baudry, B., Traon, Y.: Pairwise testing for software product lines: a comparison of two approaches. Soft. Qual. J. (2011) (in press)Google Scholar
  21. 21.
    Sen, S., Baudry, B., Mottu, J.-M.: Automatic Model Generation Strategies for Model Transformation Testing. In: Paige, R.F. (ed.) ICMT 2009. LNCS, vol. 5563, pp. 148–164. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  22. 22.
    Sherwood, G.B., Martirosyan, S.S., Colbourn, C.: Covering arrays of higher strength from permutation vectors. J. of Combinat. Designs 14(3), 202–213 (2005)MathSciNetCrossRefGoogle Scholar
  23. 23.
    Tillmann, N., Schulte, W.: Unit tests reloaded: Parameterized unit testing with symbolic execution. IEEE Software 23(4), 38–47 (2006)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Esther Guerra
    • 1
  1. 1.Universidad Autónoma de MadridSpain

Personalised recommendations