Améliorez vos compétences en matière de tests logiciels avec notre formation axée sur Python.
Apprenez à intégrer la phase de test dans votre processus de développement et comprenez l’importance des différents types de tests, y compris les tests unitaires, les tests d’intégration et les tests fonctionnels.
Découvrez comment organiser les tests et mettre en place une bonne couverture de test.
Utilisez la bibliothèque unittest pour les tests unitaires, créez et gérez des cas de test et construisez des suites de tests.
Découvrez également comment utiliser les objets Mocks pour faciliter les tests complexes.
Enfin, familiarisez-vous avec les tests d’intégration en Python et apprenez à développer des tests d’intégration pour les fonctionnalités Web des applications.
Programme détaillé
Intégrer la phase de test dans le processus de développement (1 heure)
- Cycle de vie d'un projet de développement
- Le développement dirigé par les tests
- Les phases de tests
- Les types de tests
- Test unitaire, test d'intégration, test fonctionnels, …
- Organisation des tests
- La notion de couverture de test
- Travaux pratiques:
- Mise en place de l’environnement de développement et de travail
Les tests unitaires en Python (3 heures)
- Les concepts du test unitaire
- Règles de conception et bonnes pratiques
- Périmètre
- Préparation et finalisation des tests
- La librairie unittest
- Modèle de programmation
- Les cas de tests
- La classe TestCase
- Mettre en œuvre les assertions
- Gérer les erreurs prévisibles
- Les suites de tests
- Construction des suites de tests
- Exécution des suites de tests
- Exécution des tests
- Exécution en mode texte
- Exécution dans un IDE
- Interprétation des résultats
- Travaux pratiques:
- Prise de connaissance de l’application à tester
- Réalisation de tests unitaires sur les objets simples de l’application
- Réalisation de tests permettant de valider le déclenchement d’exceptions
- Création de suites de tests
Les objets Mocks pour faciliter les tests complexes (4 heures)
- Le principe de fonctionnement des objets Mocks
- Création et manipulation
- Enregistrement et comparaison de scénarios
- La librairie unittest.mock
- Présentation de l’API
- Création des mocks
- Configuration des mocks
- Exécution des tests et enregistrement du scénario
- Validation du scénario
- Bonne pratiques d’usage des mocks
- Travaux pratiques:
- Finalisation des tests unitaires de l’application
- Mise en place de mocks sur les fonctionnalités les plus complexes
Les tests d’intégration en Python (6 heures)
- Tests unitaires vs. tests d’intégration
- Rappels sur les différences
- La problématique de l’environnement et de l’initialisation des tests et jeux de tests
- Définition de l’environnement de test
- Mettre en place une stratégie pour l’initialisation et la finalisation des tests
- Utiliser unittest pour les tests d’intégration
- Différence d’usage par rapport aux tests unitaires
- Particularités des tests unitaires dans un environnement Web
- Contraintes
- Les librairies utilisables
- Travaux pratiques:
- Mise en place de l’environnement de test
- Création d’un jeu de données de test
- Développement des outils d’initialisation et finalisation des tests
- Ecriture de tests d’intégration sur les principales fonctionnalités de l’application.
- Ecriture de tests d’intégration sur les fonctionnalités Web de l’application