
17 UML 2.0 Testing Profile
Zhen Ru Dai
Fraunhofer Fokus - Institute for Open Communication Systems
Kaiserin-Augusta-Allee 31, 10589 Berlin
dai@fokus.fraunhofer.de
17.1 Introduction
The Unified Modeling Language (UML) is a visual language to support the de-
sign and development of complex object-oriented systems [RJB99]. While UML
models focus primarily on the definition of system structure and behavior, they
provide only limited means for describing test objectives and test procedures.
In 2001, a consortium was built by the Object Management Group (OMG) in
order to develop a UML 2.0 profile for the testing domain [OMG02, UMLa].
A UML profile provides a generic extension mechanism for building UML
models in particular domains. The UML 2.0 Testing Profile (U2TP) is such an
extension which is developed for the testing domain. It bridges the gap between
designers and testers by providing a means to use UML for both system modeling
as well as test specification. This allows a reuse of UML design documents for
testing and enables test development in an early system development phase
[SDGR03, DGNP04].
After two years’ work, the U2TP specification [U2T] has finally been adopted
by the OMG. Since March 2004, the profile has become an official standard at
the OMG [U2T04].
In the U2TP specification, the consortium does not only introduce new con-
cepts which extends the usability of UML regarding test perspectives. Further
thoughts have been made on the test execution of the test model. For that, the
U2TP specification provides mapping rules of U2TP concepts to two well-known
test languages called JUnit and TTCN-3 (Testing and Test Control Notation,
version 3) [Ins03]: JUnit is a popular test framework within the eXtreme Pro-
gramming community for Java unit tests. A JUnit test suite is written in Java.
Thus, the executable code can be compiled by Java compilers. In Chapter 16.3,
TTCN-3 and its execution environment have already been introduced. By means
of a compiler, a TTCN-3 abstract test suite (ATS) is translated into executable
test suite (ETS). By means of the standardized TTCN-3 execution environment,
the ETS is able to communicate with the system under test.
Besides the test concepts and the mapping rules, the U2TP specification
defines two meta-models. One meta-model is based on UML 2.0 [UML03b,
UML03a] meta-classes and the second meta-model is a MOF-based (Meta-Object
Facility) meta-model. The intention to build the MOF-based meta-model is to
have a UML 2.0 independent meta-model. The meta-modelling aspects in the
M. Broy et al. (Eds.): Model-Based Testing of Reactive Systems, LNCS 3472, pp. 497-521, 2005.
Springer-Verlag Berlin Heidelberg 2005