API REST – LES TESTS UNITAIRES.
TD
NIVEAU : B2
Encadrant : FAGUY BATCHATO
EXERCICE 1. Validation d’un formulaire de saisie
Exercices de Tests Unitaires
Test d'ajout de client
1- Écrivez un test pour vérifier que la méthode ajouterClient fonctionne correctement lorsque des clients
valides sont ajoutés.
2- Écrivez un test pour vérifier que ajouterClient lève une IllegalArgumentException lorsque le client est nul.
3- Créez un test pour vérifier que ajouterClient lève une IllegalArgumentException lorsque le nom du client est
nul.
4- Écrivez un test pour vérifier que obtenirClient retourne le bon client en fonction du nom fourni.
5- Écrivez un test pour vérifier que obtenirClient retourne null si le client n'existe pas.
6- Écrivez un test pour vérifier que obtenirTousLesClients retourne une liste correcte de tous les clients
ajoutés.
7- Écrivez un test pour vérifier que supprimerClient fonctionne correctement en supprimant un client existant.
8- Écrivez un test pour vérifier que supprimerClient ne modifie pas la liste des clients si le client n'existe pas.
9- Écrivez un test pour vérifier que compterClients renvoie le bon nombre de clients après plusieurs ajouts.
10- Écrivez un test pour vérifier que obtenirTousLesClients renvoie une liste vide lorsque aucun client n'a été
ajouté.
11- Écrivez un test pour vérifier que plusieurs clients peuvent être ajoutés et que compterClients reflète le bon
nombre.
12- Écrivez un test pour s'assurer que la liste des clients ne contient pas de doublons lors de l'ajout de clients.
13- Écrivez un test pour vérifier que l'état de la liste des clients est correct après des opérations d'ajout et de
suppression.
14- Écrivez un test pour mesurer le temps d'exécution de l'ajout de plusieurs clients en utilisant assertTimeout.
15- Écrivez un test pour vérifier que la liste des clients est initialement vide lors de la création d'un nouvel objet
ServiceClient.
EXERCICE 2. Validation d’une couche métier
1- Créez un test paramétré pour vérifier la validation des noms, en utilisant des valeurs valides, trop courtes,
trop longues, et nulles.
2- Écrivez un test paramétré pour vérifier que la méthode de validation des emails fonctionne avec des emails
valides et invalides.
3- Créez un test paramétré pour vérifier la validation des mots de passe, en incluant des mots de passe
valides, manquant de grande ou petite lettre, de chiffres, ou de caractères spéciaux.
4- Écrivez un test paramétré pour vérifier que la validation de l'âge fonctionne correctement, en testant des
âges valides et invalides (négatifs et supérieurs à 120).
5- Créez un test paramétré qui combine plusieurs validations pour vérifier qu'un utilisateur avec des données
valides passe toutes les validations.
6- Écrivez un test paramétré pour vérifier que les méthodes de validation lèvent des exceptions appropriées
lorsqu'elles reçoivent des valeurs nulles.
7- Créez un test paramétré pour vérifier que la méthode de validation des mots de passe refuse les mots de
passe inférieurs à 8 caractères.
8- Écrivez un test paramétré pour vérifier que la validation des mots de passe refuse ceux qui ne contiennent
pas de caractères spéciaux.
9- Créez un test paramétré pour vérifier que des emails avec différents formats (sous-domaines, TLDs variés)
sont tous validés correctement.
10- Écrivez un test paramétré qui simule l'entrée utilisateur et valide l'ensemble des données (nom, email, mot
de passe, âge) pour s'assurer que toutes les validations fonctionnent ensemble.
EXERCICE 3. Validation d’un formulaire
1- Créez un test paramétré pour vérifier que l'ajout de produits avec des noms et des prix valides fonctionne
correctement.
2- Écrivez un test paramétré pour vérifier que l'ajout d'un produit avec un nom vide lève une
IllegalArgumentException.
3- Créez un test paramétré pour vérifier que l'ajout d'un produit avec un prix négatif lève une
IllegalArgumentException.
4- Créez un test paramétré pour valider que obtenirProduit retourne le bon produit selon le nom fourni.
5- Écrivez un test paramétré pour vérifier que obtenirProduit retourne null lorsque le produit n'existe pas.
6- Créez un test paramétré pour vérifier que supprimerProduit fonctionne correctement pour différents
produits.
7- Écrivez un test paramétré pour vérifier que calculerTotal renvoie le bon total pour différents ensembles de
produits.
8- Créez un test paramétré pour vérifier que compterProduits renvoie le bon nombre de produits après
plusieurs ajouts et suppressions.
9- Écrivez un test paramétré pour vérifier que obtenirTousLesProduits renvoie une liste vide lorsqu'aucun
produit n'a été ajouté.
10- Créez un test paramétré pour vérifier les conditions de validation des données d'un produit (nom nul, nom
vide, prix négatif) et assurez-vous que les exceptions correctes sont levées.
EXERCICE 4. Tableau
1- Créez un test paramétré pour vérifier que la méthode trierTableau renvoie un tableau trié correctement pour
divers tableaux d'entiers.
2- Écrivez un test paramétré pour vérifier que la méthode sommeTableau renvoie la somme correcte pour
différents tableaux d'entiers.
3- Créez un test paramétré pour vérifier que les méthodes trierTableau et sommeTableau lèvent une
IllegalArgumentException lorsqu'elles reçoivent un tableau null.