Vous êtes sur la page 1sur 18

25/02/2019

Chapitre : Automatisation des


tests Structurel
Responsable du cours : Héla Hachicha

Année Universitaire : 2018 - 2019

Test dynamique
• Le test dynamique
▫ Test structurel
▫ Test fonctionnel

• Le test dynamique : Exécuter le programme avec


un ensemble de valeurs en entrée dans le but de
révéler des erreurs dans l’implantation

1
25/02/2019

Outillage : Test Structurel


• La famille Xunit : tests unitaires
• Le plus souvent : couverture tous les nœuds et toutes les
branches (arcs).
• Le graphe de contrôle n'est pas construit, le code est
instrumente :
▫ soit au niveau du code source ;
▫ soit au niveau du byte-code.
• Production d'un rapport de couverture.
• Clover : outil commercial, très bonne intégration dans
les environnements de développement, très cher ;
• jcoverage (commercial, GPL) ou Covertura (open-
source) ;
• emma (open-source), EclEmma (pluggin Eclipse).

Tests unitaires
• Les tests unitaires sont des tests structurels
• La phase de test unitaire prend place
immédiatement après la phase de développement
• Le Test unitaire est à la charge du développeur
• Exemple d’outils
▫ Ecrire les tests
 Java : Junit, TestNG
 PHP : atoum, PHPUnit, simpleTest
▫ Couverture des tests
 Java : Emma, Jacoco, Cobertura
 PHP : Xdebug

2
25/02/2019

Exemples Outillage : Test Structurel

• Tests unitaires avec JUnit et EclEmma


▫ Présentation de JUnit
▫ Couverture de test avec EclEmma

Exemples Outillage : Junit


Junit, un outil pour le TDD

3
25/02/2019

Tests en JUnit

Organisation de test avec JUnit

4
25/02/2019

Junit:Framework

Test par Assertions

5
25/02/2019

Méthode de test

Levée d’exception et échec

6
25/02/2019

Méthodes d’initialisation et de finalisation

Méthodes d’initialisation et de finalisation

7
25/02/2019

Tests unitaires fonctionnels et structurels

8
25/02/2019

9
25/02/2019

10
25/02/2019

11
25/02/2019

12
25/02/2019

Test Structurel
Visualiser la couverture ”instruction” avec EclEmma

• EclEmma : plugin Eclipse


▫ S’utilise avec Junit afin de montrer à chaque
exécution Junit (Jeux de test) l’ensemble de
couverture relatif à cette exécution

Test Structurel
Visualiser la couverture ”instruction” avec EclEmma

13
25/02/2019

14
25/02/2019

Couverture partielle de blocs avec EclEmma

15
25/02/2019

Couverture partielle de blocs avec EclEmma

Couverture partielle de blocs avec EclEmma

16
25/02/2019

Couverture partielle de blocs avec EclEmma

Couverture partielle de blocs avec EclEmma

17
25/02/2019

Couverture partielle de blocs avec EclEmma

18

Vous aimerez peut-être aussi