TP 1
TP 1
TP 1
Objectif de TP :
Comprendre les bases de JUnit, son rôle dans les tests unitaires et
comment l'intégrer dans le processus de développement.
Apprendre à écrire des tests unitaires simples en utilisant les annotations
JUnit telles que @Test, @Before, et @After.
Comprendre comment utiliser les différentes type assertions pour vérifier
le comportement attendu du code testé.
Introduction :
Le test logiciel est une étape essentielle du processus de développement logiciel visant
à garantir la qualité, la fiabilité et la performance d'un logiciel. Il s'agit de la vérification
systématique du comportement d'une application pour s'assurer qu'elle répond aux exigences
spécifiées. L'objectif ultime est d'identifier et de corriger les défauts avant que le logiciel ne
soit déployé en production.
Les tests logiciels peuvent être effectués à différentes étapes du cycle de vie du
développement logiciel, de la phase de conception à la maintenance continue. Ils sont conçus
pour valider le bon fonctionnement des différentes composantes du logiciel, garantir la
conformité aux spécifications, et assurer une expérience utilisateur sans erreur.
Il existe plusieurs types de tests logiciels, chacun ayant un objectif spécifique. Certains
des principaux types de tests sont les suivants :
Test unitaire : Il vise à tester des unités individuelles de code, comme des fonctions ou
des méthodes, afin de s'assurer qu'elles fonctionnent correctement. Les tests unitaires
sont automatisés et sont souvent effectués par les développeurs.
Test d'intégration : Il vérifie que les différentes parties d'un système interagissent
correctement entre elles. L'objectif est de détecter les problèmes qui pourraient survenir
lors de l'intégration des composants.
Test fonctionnel : Il s'agit de tester le logiciel du point de vue des fonctionnalités
spécifiées. Les tests fonctionnels valident que le logiciel répond correctement aux
exigences définies.
Test de performance : Il évalue les performances d'une application, en mesurant sa
réactivité, sa stabilité et sa capacité à gérer un certain volume de données ou
d'utilisateurs simultanés.
Test de charge : Il teste la capacité d'une application à gérer des charges de travail
élevées. L'objectif est de déterminer le point au-delà duquel le système commence à
montrer des signes de dégradation des performances.
Au cours de cette session, l'accent est principalement mis sur les tests unitaires en langage
de programmation Java en utilisant la bibliothèque JUnit.
JUnit est un Framework de test unitaire pour le langage de programmation Java. Il fournit
un ensemble de bibliothèques et d'annotations qui permettent aux développeurs de créer et
d'exécuter des tests automatisés pour vérifier la validité et le bon fonctionnement de leurs
codes. JUnit facilite la mise en place de suites de tests qui permettent de valider les différentes
parties d'une application de manière automatisée.
L'objectif principal de JUnit est d'automatiser le processus de vérification des unités
individuelles de code, appelées « tests unitaires ». Ces tests isolent une petite partie du code
source et vérifient son comportement en fonction de différentes entrées. Les résultats de ces
tests peuvent indiquer si le code fonctionne correctement ou s'il présente des erreurs.
JUnit utilise des annotations pour définir des méthodes de test, et chaque méthode de test
est responsable de vérifier une condition spécifique. Les annotations telles que @Test,
@Before, @After, @BeforeClass, @AfterClass et @Ignore permettent de spécifier le cycle
de vie des tests et d'effectuer des actions avant ou après l'exécution des tests.
Pour clarifier, il existe des différences entre JUnit version 5 et JUnit version 4 dans leurs
annotations, comme illustré dans le tableau ci-dessous. Ces changements ont été mis en place
pour respecter des conventions de nommage plus descriptives et cohérentes.
Exercice 1 :
1) Écrivez une méthode nommée « truncate() » qui supprime la lettre « A » si elle existe
dans les premiers caractères d'une chaîne de caractères donnée par l'utilisateur.