Le test est une discipline du développement d'application.
On peut distinguer les tests en fonction de leur :
- objectif :
- scénario : vérifier que le comportement fonctionnel est bien celui attendu
- non-regression : ce qui fonctionnait dans les versions précédentes du code fonctionne toujours dans
la nouvelle version
- performance (bench) ou charge (load) : les temps de réponse à une requête sont conformes aux attentes
- intégration/fonctionnels : le code s'intègre bien avec les autres éléments du système.
- cible :
- scénarios : tester un cas d'utilisation
- unitaires : tester un composant du système
- technologie :
- Web : envoyer des requêtes Web simulant le comportement d'utilisateur(s)
Notes
- XP compte parmis ses recommandations les tests unitaires
systématiques et les tests d'intégration continue.
- Une bonne pratique de conception est le créer le test d'une fonctionnalité avant
d'implémenter cette fonctionnalité (test-driven ou test-first design), afin de :
- s'assurer de l'adéquation de la conception/réalisation au besoin exprimé par
le test
- garantir qu'une fonctionnalité peut être constamment vérifiée/évaluée au fil de son implémentation.
Exemples
Des exemples d'outils de test sont :
- Mercury
- Test Web
- Tests unitaires
- Tests fonctionnels/d'intégration
- Test de charge/performance