d5:a02

Ressources

Durée estimée : 4 heures

  • Comprendre la différence entre tests unitaires, d’intégration, fonctionnels et de performance.
  • Savoir écrire et exécuter des tests avec un framework (en Java avec JUnit / en PHP avec PHPUnit).
  • Prendre conscience de l’importance de l’automatisation et des bonnes pratiques de validation.

Vous travaillez pour une startup qui développe une application de gestion de bibliothèque. L’application doit permettre :

  • La gestion d’un catalogue de livres.
  • L’ajout et la suppression d’utilisateurs.
  • La gestion des emprunts (règle : un utilisateur ne peut pas emprunter plus de 3 livres).

Vous allez développer et tester progressivement ce projet.

  1. récupérer le projet sur gitea

Attention: Dans Netbeans :

  1. créer votre branche -votre prénom- et ne travailler que sur votre branche
  2. commiter avec un commentaire précis sur votre branche uniquement

  1. Étudier les classes fournies (Livre, Utilisateur).
  2. exécuter les tests existants / être capable de les expliquer
  3. Compléter les méthodes manquantes (ex. calcul du prix TTC d’un livre, ajout d’un livre dans la liste d’un utilisateur).

Les tests unitaires

  1. Écrire des tests unitaires avec JUnit pour :
    1. vérifier les méthodes de la classe Utilisateur
    2. Vérifier le calcul du prix TTC.
    3. Vérifier que l’ajout d’un livre à un utilisateur fonctionne.
    4. Ajouter au moins 2 tests supplémentaires par classe(y compris la classe Emprunt) pour couvrir des cas limites (ex. : emprunter plus de 3 livres, prix négatif, etc.).
  2. Exécuter les tests et corriger les bugs si nécessaire.

Important: Travail validé par la présentation d'un test à la classe le vendredi 26/09

Les tests d'intégration

Vous aller vérifier que plusieurs composants du système fonctionnent correctement ensemble.

Contrairement aux tests unitaires qui testent une seule classe/méthode, le test d’intégration vérifie la collaboration entre classes.

  1. Tester qu’un utilisateur peut emprunter un livre uniquement si :
    • le livre n’est pas déjà emprunté
    • l’utilisateur a moins de 3 emprunts
  2. Vérifier que l’état du livre(emprunté ou pas) et la liste des emprunts de l’utilisateur sont correctement mis à jour.
  • d5/a02.txt
  • Dernière modification : 2025/09/18 09:44
  • de dthevenot