Advertisement

EUnit: A Unit Testing Framework for Model Management Tasks

  • Antonio García-Domínguez
  • Dimitrios S. Kolovos
  • Louis M. Rose
  • Richard F. Paige
  • Inmaculada Medina-Bulo
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6981)

Abstract

Validating and transforming models are essential steps in model-driven engineering. These tasks are often implemented as operations in general purpose programming languages or task-specific model management languages. Just like other software artefacts, these tasks must be tested to reduce the risk of defects. Testing model management tasks requires testers to select and manage the relevant combinations of input models, tasks and expected outputs. This is complicated by the fact that many technologies may be used in the same system, each with their own integration challenges. In addition, advanced test oracles are required: tests may need to compare entire models or directory trees.

To tackle these issues, we propose creating an integrated unit testing framework for model management operations. We have developed the EUnit unit testing framework to validate our approach. EUnit tests specify how models and tasks are to be combined, while staying decoupled from the specific technologies used.

Keywords

Software testing unit testing model management test frameworks model validation model transformation 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Apache Foundation: Ant 1.8.2 (December 2010), http://ant.apache.org/
  2. 2.
    Baudry, B., Ghosh, S., Fleurey, F., France, R., Le Traon, Y., Mottu, J.: Barriers to systematic model transformation testing. Communications of the ACM 53, 139–143 (2010)CrossRefGoogle Scholar
  3. 3.
    Beck, K.: JUnit.org (April 2011), http://www.junit.org/
  4. 4.
    Beust, C.: TestNG (March 2011), http://testng.org/
  5. 5.
    Bézivin, J., Jouault, F.: Using ATL for checking models. Electronic Notes in Theoretical Computer Science 152, 69–81 (2006)CrossRefGoogle Scholar
  6. 6.
    Bézivin, J., Jouault, F., Rosenthal, P., Valduriez, P.: The AMMA platform support for modeling in the large and modeling in the small. Research Report 04.09, LINA, University of Nantes, Nantes, France (Feburary 2005)Google Scholar
  7. 7.
    Brottier, E., Fleurey, F., Steel, J., Baudry, B., Le Traon, Y.: Metamodel-based test generation for model transformations: an algorithm and a tool. In: Proc. of the 17th Int. Symposium on Software Reliability Engineering, pp. 85–94. IEEE Computer Society, Los Alamitos (2006)Google Scholar
  8. 8.
    Eclipse Foundation: Graphical Modeling Project (2011), http://eclipse.org/modeling/gmf/
  9. 9.
    Ehrig, K., Küster, J.M., Taentzer, G.: Generating instance models from meta models. Software & Systems Modeling 8(4), 479–500 (2008)CrossRefGoogle Scholar
  10. 10.
    Guttman, M., Parodi, J.: Real-Life MDA: Solving Business Problems with Model Driven Architecture, 1st edn. Morgan Kaufmann, San Francisco (2006)Google Scholar
  11. 11.
    Haase, A., Völter, M., Efftinge, S., Kolb, B.: Introduction to openArchitectureWare 4.1.2. In: Proc. of the MDD Tool Implementers Forum, TOOLS Europe 2007 (2007)Google Scholar
  12. 12.
    Kawaguchi, K.: Jenkins CI (April 2011), http://jenkins-ci.org/
  13. 13.
    Kolovos, D.S., Paige, R.F., Rose, L.M., Polack, F.A.: Unit testing model management operations. In: Proc. of the 2008 IEEE Int. Conf. on Software Testing Verification and Validation, Lillehammer, Norway, pp. 97–104 (April 2008)Google Scholar
  14. 14.
    Kolovos, D.S., Rose, L.M., Abid, S.B., Paige, R.F., Polack, F.A.C., Botterweck, G.: Taming EMF and GMF using model transformation. In: Petriu, D.C., Rouquette, N., Haugen, Ø. (eds.) MODELS 2010. LNCS, vol. 6394, pp. 211–225. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  15. 15.
    Kolovos, D.S., Rose, L.M., Paige, R.F.: The Epsilon Book (March 2011), http://www.eclipse.org/gmt/epsilon
  16. 16.
    Lin, Y., Zhang, J., Gray, J.: A testing framework for model transformations. In: Beydeda, S., Book, M., Gruhn, V. (eds.) Model-Driven Software Development, pp. 219–236. Springer, Berlin (2005)CrossRefGoogle Scholar
  17. 17.
    Mottu, J., Baudry, B., Le Traon, Y.: Model transformation testing: oracle issue. In: Proc. of the 2008 IEEE Int. Conf. on Software Testing Verification and Validation, Lillehammer, Norway, pp. 105–112 (April 2008)Google Scholar
  18. 18.
    Object Management Group: Human-Usable Textual Notation (HUTN) 1.0 (August 2004), http://www.omg.org/technology/documents/formal/hutn.htm
  19. 19.
    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
  20. 20.
    Steinberg, D., Budinsky, F., Paternostro, M., Merks, E.: EMF: Eclipse Modeling Framework, 2nd edn. Addison-Wesley Professional, Reading (2008)Google Scholar
  21. 21.
    Van Der Straeten, R., Mens, T., Van Baelen, S.: Challenges in model-driven software engineering. In: Chaudron, M.R.V. (ed.) MODELS 2008. LNCS, vol. 5421, pp. 35–47. Springer, Heidelberg (2009)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2011

Authors and Affiliations

  • Antonio García-Domínguez
    • 1
  • Dimitrios S. Kolovos
    • 2
  • Louis M. Rose
    • 2
  • Richard F. Paige
    • 2
  • Inmaculada Medina-Bulo
    • 1
  1. 1.Department of Computer Languages and SystemsUniversity of CádizCádizSpain
  2. 2.Department of Computer ScienceUniversity of YorkYorkUnited Kingdom

Personalised recommendations