Les Tests en Genie Logiciel
Les Tests en Genie Logiciel
Jean-Michel [email protected]
http://www.info.univ-angers.fr/pub/richer
Universite d’AngersLERIA - Laboratoire d’Etudes et de Recherche
en Informatique d’Angers
2008
1 / 23
Les Tests en Genie Logiciel
Cours
Pourquoi tester le logiciel
• la realisation d’un logiciel demande beaucoup d’efforts etd’attention.
3 / 23
Les Tests en Genie Logiciel
Cours
Pourquoi tester le logiciel
• la realisation d’un logiciel demande beaucoup d’efforts etd’attention.
• le nombre de concepts / d’objets a manipuler peut vitedevenir problematique
4 / 23
Les Tests en Genie Logiciel
Cours
Pourquoi tester le logiciel
• la realisation d’un logiciel demande beaucoup d’efforts etd’attention.
• le nombre de concepts / d’objets a manipuler peut vitedevenir problematique
• les tests assurent la coh erence et la fiabilit e du logiciel
5 / 23
Les Tests en Genie Logiciel
Cours
Les differents types de tests
On peut distinguer au moins 3 types de tests :
• tests de validation, coherence des algorithmes
6 / 23
Les Tests en Genie Logiciel
Cours
Les differents types de tests
On peut distinguer au moins 3 types de tests :
• tests de validation, coherence des algorithmes
• tests de (non) regression
7 / 23
Les Tests en Genie Logiciel
Cours
Les differents types de tests
On peut distinguer au moins 3 types de tests :
• tests de validation, coherence des algorithmes
• tests de (non) regression
• tests de performance
8 / 23
Les Tests en Genie Logiciel
Cours
Les tests de validation
• assurent que l’implantation des algorithmes est fiable etcorrespond ace qui etait demande
9 / 23
Les Tests en Genie Logiciel
Cours
Les tests de validation
• assurent que l’implantation des algorithmes est fiable etcorrespond ace qui etait demande
• difficile a mettre en oeuvre
10 / 23
Les Tests en Genie Logiciel
Cours
Les tests de validation
• assurent que l’implantation des algorithmes est fiable etcorrespond ace qui etait demande
• difficile a mettre en oeuvre
• pas toujours necessaires voire inutile
11 / 23
Les Tests en Genie Logiciel
Cours
Les tests de (non) regression
• assurent que le logiciel fonctionne correctement
12 / 23
Les Tests en Genie Logiciel
Cours
Les tests de (non) regression
• assurent que le logiciel fonctionne correctement
• assurent que toute modification d’un code correctn’introduit pas d’erreur
13 / 23
Les Tests en Genie Logiciel
Cours
Les tests de (non) regression
• assurent que le logiciel fonctionne correctement
• assurent que toute modification d’un code correctn’introduit pas d’erreur
• peuvent etre ecrits avant le code (cas des methodesagiles)
14 / 23
Les Tests en Genie Logiciel
Cours
Les tests de (non) regression
• assurent que le logiciel fonctionne correctement
• assurent que toute modification d’un code correctn’introduit pas d’erreur
• peuvent etre ecrits avant le code (cas des methodesagiles)
• peuvent etre mis en oeuvre de maniere automatique(framework xUnit ) ou a la main (design for testability)
15 / 23
Les Tests en Genie Logiciel
Cours
Les tests de (non) regression en pratique
• pour chaque module, pour chaque classe et pour chaquemethode il faut creer un test
16 / 23
Les Tests en Genie Logiciel
Cours
Les tests de (non) regression en pratique
• pour chaque module, pour chaque classe et pour chaquemethode il faut creer un test
• le test a pour but de verifier le comportement de lamethode
17 / 23
Les Tests en Genie Logiciel
Cours
Les tests de (non) regression en pratique
• pour chaque module, pour chaque classe et pour chaquemethode il faut creer un test
• le test a pour but de verifier le comportement de lamethode
• regulierement on lance les tests, en cas d’erreur on envoieun message aux programmeurs
18 / 23
Les Tests en Genie Logiciel
Cours
Les tests de performance
• assurent que l’implantation est efficace
19 / 23
Les Tests en Genie Logiciel
Cours
Les tests de performance
• assurent que l’implantation est efficace
• recherchent les parametres qui rendent les algorithmes lesplus performants possibles
20 / 23
Les Tests en Genie Logiciel
Cours
Les tests de performance
• assurent que l’implantation est efficace
• recherchent les parametres qui rendent les algorithmes lesplus performants possibles
• demandent generalement beaucoup de temps de calcul(cluster)
21 / 23
Top Related