fbpx

Les Tests Unitaires des Applications Java

 Objectifs

À la fin de la formation Les tests unitaires des applications Java, vous serez capable de valider les objectifs d’apprentissages suivants :
➤ Mettre en place les différents types de tests usuels sur une application.
➤ Maîtriser les bonnes pratiques de développement de classe ou de plan de tests.
➤Maîtriser les différentes méthodologies de production.

 Prérequis

Connaître le langage de programmation Java.

 Programme

mon programme

1.Introduction aux tests des applications Java EE.

➤Qu'est-ce que le test ? Sa problématique et son importance.
➤Les types de tests : tests unitaires, test d'intégration, tests fonctionnels,tests de charge...
➤Les moyens : les plates-formes de test, l'instrumentation, l'automatisation,l'organisation des activités de test.
➤Tests et conduite de projet : problématique de l'organisation des tests,comment gérer l'incertitude, la documentation liée aux tests.
➤Test et méthodologies : Tests et USDP, Tests et UML, l'intégration continue et l'approche eXtreme Programming.
➤Particularités des applications Java EE : différence entre les tiers, isolation des couches, prise en compte de la concurrence, notion d'anomalies.

2.Tests unitaires (JUnit, TestNG).

➤La finalité des tests unitaires.
➤Le test, pourquoi s'en priver ? La simplicité de JUnit.
➤Séparation de la classe Test et de la classe à tester.
➤Définition de la classe de tests et des cas de tests.
➤Mise en place des suites de tests.
➤JUnit, TestNG et Eclipse, plug-ins disponibles, paramétrage del'environnement, écriture des cas de tests, des suites des tests, exécution du test.

3.Tests d'intégration (Arquillian).

➤Problématique des tests d'intégration, différence avec tests unitaires,règles de nommage.
➤Le container Java EE, les conteneurs embarqués.
➤Le pattern d'injection de dépendances pour l'isolation, le cas de Spring.
➤Base de données et test d'intégration.
➤L'innovation Arquillian.

4.Tests fonctionnels (suite Selenium).

➤L’approche boîte noire, particularités du test fonctionnel des applications web.
➤Historique du projet Selenium et composants de la suite.
➤Selenium IDE : présentation, syntaxe des scripts de test.
➤Selenium Web Driver, programmation de test, intégration avec JUnit.
➤Diversité du client et Selenium Grid.

5.Tests de performance et de montée en charge avec JMeter.

➤Problématique et processus itératif.
➤Mise en place de ,l'architecture de tests.
➤Panorama des outils disponibles.
➤Présentation du projet JMeter.
➤Introduction à la notion de plan de test, les différents éléments disponibles.
➤Particularités des applications Web.
➤Les groupes de processus, les contrôleurs, les différents listeners.
➤Construction d'un plan de test par enregistrement.
➤Mise en place de la plate-forme de test, les différentes alternatives, le remote testing.
➤Exécution le plan de test et analyse des résultats.
➤Les Best Practices.

6.Automatisation des tests, les tests dans l'intégration continue.

➤La nécessité de l'automatisation.
➤Les tests dans le processus de build.
➤Automatisation avec Ant : tâches JUnit, Arquillian, JMeter.
➤Les tests dans le cycle de vie de Maven, le plugin Surefire.
➤Configuration Maven pour les tests d'intégration.
➤Les tests dans l'intégration continue, la publication de résultats.
➤Les métriques liées aux tests, les tests d'acceptance.
➤Présentation de Jenkins et des plugins associés.