Tests fonctionnels
"Un test fonctionnel valide ce que le système fait,
pas comment il le fait."
Objectifs pédagogiques
À la fin de cette section, vous serez capable de :
- expliquer ce qu’est un test fonctionnel
- comprendre son lien avec les exigences
- identifier les fonctionnalités à tester
- rédiger des scénarios fonctionnels clairs
Définition
Les tests fonctionnels vérifient que le système :
- se comporte conformément aux exigences fonctionnelles
- fournit les fonctionnalités attendues
- du point de vue de l’utilisateur
👉 Ils ne s’intéressent pas à l’implémentation technique,
mais uniquement au résultat observable.
Positionnement dans le processus de test
Les tests fonctionnels sont généralement basés sur :
- les exigences
- les spécifications fonctionnelles
- les user stories
- les règles métier
Ils interviennent principalement lors :
- des tests système
- des tests d’acceptation
- des tests E2E
Exemple fil rouge – MyEvents
➡️ Voir la description détaillée de l’application MyEvents
Dans l’application MyEvents, des tests fonctionnels permettent de vérifier que :
- un utilisateur peut créer un événement
- un participant peut réserver un billet
- un paiement valide déclenche une confirmation
- une invitation est envoyée par e-mail ou SMS
👉 Peu importe comment le code est écrit :
ce qui compte, c’est que la fonctionnalité fonctionne pour l’utilisateur.
Exemple de scénario fonctionnel (MyEvents)
Fonctionnalité : achat d’un billet
-
Précondition
L’utilisateur est connecté et un événement est disponible -
Action
L’utilisateur sélectionne un billet et effectue un paiement valide -
Résultat attendu
- le paiement est accepté
- le billet est enregistré
- un e-mail de confirmation est envoyé
- le billet apparaît dans l’espace utilisateur
👉 Ce scénario est directement issu de la base de test (exigence EF-01).
Tests fonctionnels vs autres tests
| Type de test | Question principale |
|---|---|
| Test unitaire | Le code fonctionne-t-il ? |
| Test d’intégration | Les composants communiquent-ils correctement ? |
| Test fonctionnel | La fonctionnalité attendue est-elle fournie ? |
| Test de performance | Le système est-il assez rapide ? |
| Test de sécurité | Le système est-il protégé ? |
Bonnes pratiques
- partir des exigences
- écrire des scénarios compréhensibles
- couvrir les cas normaux et les erreurs
- éviter les détails techniques
- maintenir les tests à jour