Chapitre 2 : Tester pendant le cycle de vie du développement logiciel
1. Tester dans le contexte d'un cycle de vie du développement logiciel.
2. Niveaux de test et types de test.
3. Test de maintenance.
Modèles de développement logiciels
Les activités de test doivent être adaptées au modèle de cycle de vie utilisé.
Principales caractéristiques :
- Une activité de test correspond à chaque activité de développement.
- Chaque niveau de test a des objectifs spécifiques.
Modèles couverts :
- Modèle séquentiel 'En cascade' : chaque phase débute à la fin de la précédente.
- Modèle en V : intégration des tests à chaque étape, application du principe
'Tester tôt'.
- Modèle itératif : développement et test progressifs en cycles avec livraisons
partielles.
- Modèles combinés selon le contexte (ex : back-end avec modèle en V et front-end
en Agile).
Niveaux de test
1. Test de composants (tests unitaires) :
- Vérifie les unités ou modules isolés pour détecter des anomalies.
- Cible : méthodes, classes, structures de données.
2. Test d'intégration :
- Valide l’interaction entre composants.
- Inclut des tests de validité et de non-régression.
- Défauts courants : erreurs de données, problèmes d’interfaces.
3. Test système :
- Vérifie l’ensemble du système pour répondre aux exigences spécifiées.
- Comprend des tests fonctionnels et non-fonctionnels (stress, performance,
utilisabilité).
4. Test d’acceptation :
- Réalisé par l’utilisateur final pour valider le produit avant sa mise en
production.
- Permet de détecter des erreurs dans la définition des besoins.
Types de test
1. Tests fonctionnels :
- Vérifient que les fonctions respectent les spécifications (boîte noire).
2. Tests non-fonctionnels :
- Évaluent des propriétés comme la performance et la sécurité.
3. Tests boîte blanche :
- Basés sur la structure interne, visent à couvrir toutes les branches, boucles et
structures de données.
4. Tests liés aux changements :
- Tests de confirmation : vérifient les corrections apportées.
- Tests de régression : s’assurent qu’il n’y a pas de nouveaux défauts.
Tests de maintenance
1. Nécessité :
- Corriger des défauts.
- Ajouter ou modifier des fonctionnalités.
- Maintenir les caractéristiques non-fonctionnelles comme la performance et la
fiabilité.
2. Analyse d’impact :
- Identifie les effets secondaires des modifications.
- Nécessite une bonne traçabilité et des spécifications à jour.