Introduction à la formation TDD
Comprendre le processus de test dans le cycle de vie d’un projet
Typologie des tests
Les tests dans une gestion de projet agile
Pratiques XP (eXtreme Programming), la programmation en binôme (uniquement en présentiel)
Origine du Test Driven Development
Apports du TDD
Test Driven Development
Cycle de développement du TDD
Les 3A : Arrange, Act, Assert
Remaniement de code : techniques de refactoring en TDD
Conception émergeante
Gestion des exceptions
JUnit
Tests unitaires
Framework xUnit, implémentation Java : jUnit
Principe d’assertions
Alternatives à jUnit (TestNG)
Outillage complémentaire
Mise en œuvre et bonnes pratiques
Techniques avancées
Correction des anomalies
Gestion de la montée en charge et de la sécurité des produits
Introduction à la gestion de la performance
Introduction aux Stress tests
Mocks et Stubs
Simulations et reproduction d’objets réels
Utilisation
Détails techniques
Ecriture de tests maintenables
Fixtures
Qualités d’un code de test
Styles de TDD
Test de code hérité
Qu’est-ce que le code hérité (legacy code) ?
Cycle d’évolution
Réaliser des tests fonctionnels
Tests fonctionnels et TDD
Outils
Outils OpenSource et outils commerciaux
Architecture matérielle de tests
L’intégration continue
Choisir un outil d’intégration continue
Couverture de test : axiomes et outils