Automatisation des tests logiciels
Besoin d’adapter cette formation à vos besoins ?
N’hésitez pas à nous contacter afin d’obtenir un devis sur mesure !
Formation créée le 21/11/2022. Dernière mise à jour le 31/08/2023.
Version du programme : 3
Programme de la formation
L'automatisation des tests d'un développement logiciel, est un investissement lourd mais rentable. Découvrez les aspects organisationnels/financiers, les bonnes pratiques et les outils de l'automatisation des différents types de test : tests unitaires, tests d'intégration, tests fonctionnels, tests de performance.
Objectifs de la formation
- Utiliser un référentiel de tests et paramétrer des liens vers des outils connexes, pour automatiser une campagne de test
- Faire une analyse statique de code et de couverture de tests et l'intégrer dans une chaîne de fabrication logicielle
- Utiliser les techniques d'objets factices, souches ou simulacres et mettre en place un serveur d'intégration continue
- Mettre en œuvre une automatisation de tests fonctionnels sur client lourd et sur Web
- Automatiser les tests de performance, avec mise en place d'un test de détermination du seuil de déni de service
Profil des bénéficiaires
- Développeurs, responsables qualité et tests logiciels, ingénieurs automatisation des tests, chefs de projet MOE.
- Bonnes connaissances en programmation Java.
Contenu de la formation
-
Introduction, rappels sur le processus du test logiciel
- Rôle du test dans le processus de développement.
- Les tests : unitaires, fonctionnels, etc.
- Les différentes méthodes de test.
- Processus de test et stratégie de test.
- Outils et méthodes intervenant à différentes étapes.
-
Automatisation de la gestion des tests
- Gestion de la couverture des exigences par les tests. Notion de couverture et de granularité.
- Démarche de mise au point : organisation des suites de tests et création des cas.
- Faut-il automatiser un test ? Critères à prendre en compte ?
- Préparation à l'automatisation.
- Construction de la population de test.
- Mise au point et vérification des tests (Revue)
- Exécution, enregistrement des anomalies. Notion de rapport d'incident d'après l'IEEE.
- Gestionnaires d'anomalies. Automatisation de la création des anomalies.
- Analyse de résultats d'exécution de tests. Consolidation des tests.
-
Automatisation des tests unitaires
- Organisation et bonnes pratiques pour les tests unitaires.
- Critères d'automatisation.
- Tests unitaires : Tests Driven Development.
- Mesure de la couverture de code : couverture des tests structurels, couverture d'instructions et branches.
- Analyse statique de code : analyse outillée du code source hors exécution (règles de codage) : Checkstyle, Cobertura.
- Automatisation avec un fichier de configuration.
- Analyse dynamique de code : couverture des instructions, des branches, des prédicats...
- Automatisation avec un outil d'analyse de couverture.
- Organisation des tests unitaires, pair programming, pair testing.
- Utilisation des frameworks : gestion des scripts de tests, gestion des données de tests, récupération des résultats.
-
Automatisation des tests d'intégration
- Stratégies propres à l'intégration : big-bang, "au fil de l'eau", par incréments etc.
- Intégration ascendante versus descendante. Intégrations mixtes.
- Objets simulacres : bouchons pour simuler les fonctions appelées, mocking pour remplacer un objet. Les frameworks.
- Intégration continue : mise en place de gestionnaire de configuration, constructeur de build, outils de pilotage.
- Focus sur un gestionnaire de configuration logiciel.
- Signalement automatique des anomalies.
- Exécution automatique et cyclique des tests logiciels.
- Focus sur un constructeur de build.
- Focus sur un serveur d'intégration continue.
-
Automatisation du test fonctionnel
- Définition du test fonctionnel, non-régression.
- Le test simulant l'action des utilisateurs à partir des interfaces utilisateurs (IHM).
- Constats sur l'automatisation du test fonctionnel.
- Automatisation des tests via l'IHM, via des interfaces de programmation (API).
- Chaîne d'outils, robots de test, script (API publiques).
- Gestion de l'obsolescence des tests.
-
Automatisation des tests système
- Les différents type de tests système : performance, charge, stress.
- Constats sur les tests de performance.
- Tests de performance, définition des indicateurs.
- Scripts de tests de performance. Mise en œuvre d'outils et analyse.
- Tests de montée en charge, tests de stress : présentation des indicateurs clés et de l'outillage.
- Gérer la base de données de tests. Gestion du contexte.
-
Synthèse
- Automatisation des tests : coût directs, indirects.
- Gains quantitatifs de l'automatisation : volumétrie, modularité...
- Gains qualitatifs de l'automatisation : mode opératoire sauvegardé, pas d'erreur, confiance...
- Mesure du retour sur investissement.
Nos formations sont animées par des experts reconnus dans leur domaine possédant une expérience sur le terrain significative et des compétences pédagogiques reconnues.
- Feuilles de présence.
- Questions orales ou écrites (QCM).
- Mises en situation.
- Formulaires d'évaluation de la formation.
- Certificat de réalisation de l’action de formation.
- Accueil des apprenants dans une salle dédiée à la formation.
- Documents supports de formation projetés.
- Exposés théoriques
- Etude de cas concrets
- Quiz en salle
- Mise à disposition en ligne de documents supports à la suite de la formation.
Qualité et satisfaction
Modalités de certification
- Attestation de fin de formation
- Voir le catalogue de certification