Français Anglais
Accueil Annuaire Plan du site
Home > Research results > Dissertations & habilitations
Research results
Ph.D de

Group : Formal Testing and System Exploration

Test Generation and Animation Based on Object-Oriented Specifications

Starts on 01/01/2009
Advisor : WOLFF, Burkhart

Funding : CDD sur contrat UPS
Affiliation : Université Paris-Saclay
Laboratory : INRIA Saclay

Defended on 09/12/2011, committee :
Bernhard Rumpe, RWTH Aachen, Rapporteur

Catherine Dubois, Ecole Nationale Supérieure d'Informatique pour l'Industrie et l'Entreprise (ENSIIE), Rapporteur

Burkhart Wolff, Université Paris-Sud, Directeur de Thèse

Christine Paulin-Mohring, Université Paris-Sud, Examinatrice

Bruno Marre, Commissariat à l'Energie Atomique et aux Energies Alternatives (CEA), Examinateur

Research activities :

Abstract :
The goal of this thesis is the development of support for test generation and animation based on object-oriented specifications. We aim particularly to take advantage of state-of-the-art satisfiability solving techniques by using an appropriate representation of object-oriented data. While automated test generation seeks a large set of data to execute an implementation on, animation performs computations that comply with a specification based on user-provided input data. Animation is a valuable technique for validating specifications.

As a foundation of this work, we present clarifications and a partial formalization of the Object Constraint Language (OCL) as well as some extensions in order to allow for test generation and animation based on OCL specifications.

For test generation, we have implemented several enhancements to HOL-TestGen, a tool built on top of the Isabelle theorem proving system that generates tests from specifications in Higher-Order Logic (HOL). We show how SMT solvers can be used to solve various types of constraints in HOL and present a modular approach to case splitting for deriving test cases. The latter facilitates the introduction of splitting rules that are tailored to object-oriented specifications.

For animation, we implemented the tool OCLexec for animating OCL specifications. OCLexec generates from operation contracts corresponding Java implementations that call an SMT-based constraint solver at runtime.