Utilisation des contraintes pour la génération automatique de cas de test structurels
Une des difficultés majeures pour l’automatisation du processus de test structurel réside
dans la production automatique des cas de test, c’est-à-dire la détermination d’un ensemble
de valeurs d’entrée pour lesquelles un point choisi du programme sera exécuté. Nous présentons
ici une nouvelle méthode où ce problème est transformé en un problème de résolution
de contraintes. La traduction du programme initial en un système de contraintes est effectuée
en utilisant la forme SSA et les dépendances de contrôle. Des opérateurs spécifiques, implantés
avec des contraintes gardées, ont été introduits pour autoriser le traitement de contraintes
propres à cette application. INKA, le système prototype qui a été développé, permet de traiter
des programmes utilisant un sous-ensemble significatif des constructions du langage
The generation of test data is one of the main difficulties of the unit testing process of
software in industrial applications. Thus, a major challenge consists in generating test data automatically,
i.e., in finding input values for which a selected point in a procedure is executed. We
introduce here an original framework where the latter problem is transformed into a constraint
solving problem. The initial program is translated into a constraint system by means of the well
known ”single static assignment” form and control dependencies. Specific operators, based
upon entailment techniques, have been introduced to tackle this kind of applications. INKA, the
prototype system we have developed, allows us to handle programs that use a significant subset
of the features of the
B.BOTELLA, A.GOTLIEB, C.MICHEL, M.RUEHER, P.TAILLIBERT
test structurel, cas de test, programmation par contraintes, contraintes gardées
structural testing, test data, constraint programming, entailment techniques
Français
|