Utilisation des structures combinatoires pour le test statistique

par Sandrine-Dominique Gouraud

Thèse de doctorat en Informatique

Sous la direction de Marie-Claude Gaudel.

Soutenue en 2004

à Paris 11 .


  • Résumé

    Cette thèse propose une nouvelle approche pour le test statistique de logiciel à partir d'une description graphique des comportements du système à tester (graphe de contrôle, statecharts). Son originalité repose sur la combinaison de résultats et d'outils de combinatoire (génération aléatoire de structures combinatoires) et d'un solveur de contraintes, pour obtenir une méthode de test complètement automatisée. Contrairement aux approches classiques qui tirent des entrées, la génération aléatoire uniforme est utilisée pour tirer des chemins parmi un ensemble de chemins d'exécution ou de traces du système à tester. Puis, une étape de résolution de contraintes est utilisée pour déterminer les entrées qui permettront d'exécuter ces chemins. De plus, nous montrons comment les techniques de programmation linéaire peuvent améliorer la qualité d'un ensemble de tests. Une première application a été effectuée pour le test statistique structurel défini par Thévénod-Fosse et Waeselynck (LAAS) et un prototype a été développé. Des expériences (plus de 10000 réalisées sur quatre fonctions issues d'un logiciel industriel) ont été effectuées pour évaluer notre approche et sa stabilité. Ces expériences montrent que notre approche est comparable à celle du LAAS, est stable et a l'avantage d'être complètement automatisée. Ces premières expériences nous permettent également d'envisager un passage à l'échelle de notre approche. Plus généralement, ces travaux pourraient servir de base pour une nouvelle classe d'outils dans le domaine du test de logiciel, combinant génération aléatoire de structures combinatoires, techniques de programmation linéaire et résolution de contraintes.


  • Résumé

    In this thesis, we describe a new generic method for statistical testing of software procedures, according to any given graphical description of the behavior of the system under test (control flow graph, statecharts, etc. ). Its main originality is that it combines results and tools from combinatorics (random generation of combinatorial structures) with symbolic constraint solving, yielding a fully automatic test generation method. Instead of drawing input values as with classical testing methods, uniform random generation routines are used for drawing paths from the set of possible execution paths or traces of the system under test. Then a constraint resolution step is used for finding actual values for activating the generated paths. Moreover, we show how linear programming techniques may help to improve the quality of test set. A first application has been performed for structural statistical testing, first defined by Thevenod-Fosse and Waeselynck (LAAS) and a tool has been developed. Some experiments (more than 10000 on four programs of an industrial software) has been made in order to evaluate our approach and its stability. These experiments show that our approach is comparable to the one of the LAAS, is stable and has the additional advantage to be completely automated. Moreover, these first experiments show also that the method scales up well. More generally, this approach could provide a basis for a new class of tools in the domain of software testing, combining random generation of combinatorial structures, linear programming techniques, and constraint solvers.

Consulter en bibliothèque

La version de soutenance existe sous forme papier

Informations

  • Détails : 196 p.
  • Notes : Publication autorisée par le jury
  • Annexes : Bibliogr. p.181-190. Index

Où se trouve cette thèse ?

  • Bibliothèque : Université Paris-Sud (Orsay, Essonne). Service Commun de la Documentation. Section Sciences.
  • Disponible pour le PEB
  • Cote : 0g ORSAY(2004)61
Voir dans le Sudoc, catalogue collectif des bibliothèques de l'enseignement supérieur et de la recherche.