Automatisation du test de tous-les-chemins en présence d'appels de fonction
Institution:
Evry-Val d'EssonneDisciplines:
Directors:
Abstract EN:
Structural testing is usually restricted to unit tests and based on some clear definition of source code coverage. In particular, the all-paths criterion is recognised as offering a high level of software reliability. To limit the combinatorial explosion in the number of paths, we choose to abstract the called functions by their specification. We incorporate the functional information on the called functions within the structural information on the function under test, given as a CFG. This representation combining functional and structural descriptions allows us to characterise test selection criteria ensuring the coverage of the source code of the function under test. Two new criteria are proposed. The first one corresponds to the coverage of all the paths of this new representation, including all the paths arising from the functional description of the called functions. The second one covers all the feasible paths of the function under test only.
Abstract FR:
Le test structurel est d'habitude limité aux tests unitaires et est basé sur une définition précise de la couverture du code source. Le critère tous-les-chemins est reconnu comme offrant un haut niveau de confiance. Pour limiter l'explosion combinatoire des chemins, nous abstrayons les fonctions appelées par leur spécification. Nous incorporons les informations fonctionnelles des fonctions appelées dans les informations structurelles de la fonction sous test données par le CFG. Cette représentation combinant des descriptions fonctionnelles et structurelles nous permet de caractériser des critères de sélection de test assurant la couverture du code source de la fonction sous test. On propose deux nouveaux critères. Le premier correspond à la couverture de tous les chemins de cette nouvelle représentation, y compris des chemins résultant de la description fonctionnelle des fonctions appelées. Le deuxième couvre uniquement tous les chemins faisables de la fonction sous test.