Les tests logiciels avec une application angular et spring
À propos du cours
L’ajout d’un module/formation dédiée aux tests logiciels (Angular + Spring Boot) est une valeur ajoutée majeure, car c’est souvent ignoré par les développeurs juniors, alors que c’est essentiel en entreprise.
Tu vas permettre à tes apprenants de :
-
🌍 Comprendre l’intérêt de chaque type de test
-
🧪 Apprendre à tester leur code backend et frontend
-
⚙️ Automatiser des scénarios d’intégration, UI, sécurité et performance
🧪 Plan structuré de ta formation : Tester une application Angular + Spring
🟢 Module 1 : Introduction aux tests logiciels
-
Pourquoi tester ? 🔁
-
Les types de tests :
-
Unitaires (sur des fonctions isolées)
-
Intégration (communication entre composants/systèmes)
-
Fonctionnels/acceptation (du point de vue utilisateur)
-
Interface/UI
-
Tests de sécurité
-
Tests de performance (stress/load)
-
-
Différence entre test manuel et test automatisé
🧩 Module 2 : Tests unitaires côté Spring Boot
-
📦 Utiliser JUnit 5 et Mockito
-
Tester un service, un repository, un contrôleur
-
Mock des dépendances, assertions, comportements
-
Utilisation de
@SpringBootTest
pour les tests d’intégration -
⚠️ Bonnes pratiques : test coverage, nomenclature
🧪 Module 3 : Tests côté Angular
-
📁 Utiliser Jasmine et Karma pour tests unitaires
-
Tester un composant Angular, un service, une directive
-
Mock HTTP avec
HttpTestingController
-
Organisation des specs, lancement en CLI, rapports
🤝 Module 4 : Tests d’intégration & E2E
-
🔗 Backend + frontend : test de bout en bout (E2E)
-
Utiliser Protractor (ou Cypress, en alternative moderne)
-
Simuler une interaction utilisateur complète
-
Tester un parcours réel (ex : login + CRUD utilisateur)
🛡️ Module 5 : Tests de sécurité
-
✅ Backend : tests d’accès protégés (
@WithMockUser
, tests JWT) -
❌ Tests de restrictions d’accès selon les rôles
-
🔒 Angular : protection de routes, redirection non autorisée
⚡ Module 6 : Tests de performance
-
📊 Backend : tester les temps de réponse avec JMeter ou Gatling
-
⚙️ Frontend : mesurer le TTI, LCP, etc. avec Lighthouse
-
🔄 Simuler des charges, voir le comportement de l’API et de l’UI
🎁 Module bonus : intégration continue des tests
-
📦 Utiliser GitHub Actions pour exécuter automatiquement les tests
-
Rapport de couverture avec JaCoCo (backend) & Istanbul (frontend)
-
🛠️ Astuce : « Test Driven Development » en bonus avancé
✅ Ce que l’élève va apprendre
-
Utiliser les bons outils de test adaptés à Angular et Spring
-
Comprendre quand et quoi tester
-
Créer une suite de tests complets et maintenables
-
Intégrer les tests dans une pipeline CI/CD
-
Pratiquer sur une application concrète déjà développée (valeur ajoutée 💎)
🔥 Astuce pédagogique : cette formation = ultime crédibilité
Tu peux vendre cette partie :
-
Comme un module avancé fullstack pro
-
Ou comme une formation à part entière « Tests logiciels Angular + Spring »