Model-Based Test Driven Development of the Tefkat Model-Transformation Engine (original) (raw)

Applying Black-Box Testing to Model Transformations in the Model Driven Architecture Context

Journal of Computer Science, 2014

Testing model transformations has played a leading role with the dissemination of MDA in software development processes. Software testing based on black-box testing, together with the "category partitioning" method, can be efficiently used in order to conduct the verification of model transformations. This study employs software testing techniques to an ATL model transformation in the MDA context and points out their benefits. The black-box testing method was adapted to the MT-PROAPES model transformation based on profiles and platform models. The platform models define the range of input models of the MT-PROAPES and are used for the creation of the test cases. The test cases were selected so as to meet certain requirements and increase the ability to detect errors in the model transformation. This approach makes the test process more agile and does not require any abstraction of behavioral properties of the transformations. The field of transformation testing and verification still faces significant challenges and requires a lot of research. Although having some limitations, black-box testing conforms to various situations, besides allowing its integration with other test strategies.

Model transformation testing challenges

2006

Abstract. Model transformations play a critical role in Model Driven Engineering, and thus rigorous techniques for testing model transformations are needed. This paper identifies and discusses important issues that must be tackled to define sound and practical techniques for testing transformations.

Automated generation of test cases using model-driven architecture

2007

In this paper, we demonstrate a method that uses the model transformation technology of MDA to generate unit test cases from a platform-independent model of the system. The method we propose is based on sequence diagrams. First we model the sequence diagram and then this model is automatically transformed into a general unit test case model (an xUnit model which is independent of a particular unit testing framework), using model-to-model transformations. Then model-to-text transformations are applied on the xUnit model to generate platformspecific (JUnit, SUnit etc.) test cases that are concrete and executable. We have implemented the transformations in a prototype tool based on the Tefkat transformation tool and MOFScript. The paper gives details of the tool and the transformations that we have developed. We have applied the method to a small example (ATM Simulation).

Model-Based Testing of Object-Oriented Systems

Lecture Notes in Computer Science, 2003

This paper discusses a model-based approach to testing as a vital part of software development. It argues that an approach using models as central development artifact needs to be added to the portfolio of software engineering techniques, to further increase efficiency and flexibility of the development as well as quality and reusability of results. Then test case modeling is examined in depth and related to an evolutionary approach to model transformation. A number of test patterns is proposed that have proven helpful to the design of testable object-oriented systems. In contrast to other approaches, this approach uses explicit models for test cases instead of trying to derive (many) test cases from a single model. Software has become a vital, but often invisible part of our lives. Embedded forms of software are part of almost any technical device. The average household uses several computers, and the internet and telecommunication world has considerably changed our lives. Software is used for a variety of jobs. It can be as small as a simple script or as complex as an entire operating or enterprise resource planning system.

Model transformation impact on test artifacts: an empirical study

2012

Abstract Development environments that support Model-Driven Development often focus on model-level functional testing, enabling verification of design models against their specifications. However, developers of safety-critical software systems are also required to show that tests cover the structure of the implementation. Unfortunately, the implementation structure can diverge from the model depending on choices such as the model compiler or target language.

Barriers to systematic model transformation testing

2010

Model driven engineering (Mde) techniques10 support extensive use of models in order to manage the increasing complexity of software systems. Appropriate abstractions of software system elements can ease reasoning and understanding and thus limit the risk of errors in large systems. Automatic model transformations play a critical role in MDE since they automate complex, tedious, error-prone, and recurrent software development tasks.