Tests et TestNG

Etapes de développement

Comme nous venons de le voir dans la partie précédente, il existe plusieurs catégories de tests qui sont nécessaires de connaître mais aussi de mettre en oeuvre. Je vais maintenant vous parler des tests en fonction des étapes de développement logiciel.

Le cycle en V

Voici tout d'abord un schéma nous montrant ce qu'est le cycle en V:



Sur ce schéma, nous voyons clairement qu'à chaque étape de création du logiciel, une étape de tests lui correspond.
Ainsi nous avons:

Tests de chaque étape

Tests Unitaires:

Ces tests permettent de tester des bouts de code (en Java des classes). Pour chaque classe écrite, des tests sont nécessaires afin d'être plus sûre du code

Tests d'intégration:

Ces tests sont nécessaires lors de l'intégration des différents bouts de code, c'est-à-dire pour vérifier les différentes interactions entre chaque bout de code. Du code testé unitairement fonctionnel pourrait devenir infonctionnel une fois lié avec d'autres bouts de code.

Tests système:

Ces tests interviennent à la fin du développement, pour vérifier que le système correspond bien à l'algorithme décidé.

Tests de recette:

Ces tests correspondent à la phase de validation (avec le client donc), ils sont là afin de vérifier que ce qui a été produit correspond au besoin du client.

En résumé

Sur le schéma que vous pouvez voir au-dessus, j'ai rappelé les différents tests en fonction de l'étape de développement du logiciel. Vous remarquerez également que j'ai aussi mis en paralléles à ceux-ci des "tests de non-régression". Je les ai symbolisés de cette manière, pour rappeler que des tests de non-régression doivent toujours avoir lieu dès qu'on ajoute ou modifie du code.