bastydjamen / hrconnect

GeekHR Connect is set to transform the way companies manage their employees. Based on cutting-edge technologies, this platform offers a complete solution for managing employees' personal and professional information, as well as advanced functionalities for managing vacations, absences, and now, displaying the company organization chart.
0 stars 0 forks source link

Tests unitaires #13

Closed bastydjamen closed 2 months ago

bastydjamen commented 4 months ago

Titre du ticket : Mise en place de tests unitaires pour EmployeeService

Description détaillée :

Afin de garantir la robustesse et la fiabilité du EmployeeService dans notre application, ce ticket vise à développer un ensemble complet de tests unitaires pour toutes les méthodes de ce service. Les tests doivent couvrir la création, la recherche, la mise à jour et la suppression d'employés, ainsi que la gestion des exceptions.

Objectifs de la tâche :

Préparation de l'environnement de test :

Configurer les dépendances nécessaires dans le projet pour utiliser JUnit et Mockito. Annoter la classe de test EmployeeServiceTests avec @ExtendWith(MockitoExtension.class) pour activer l'intégration de Mockito avec JUnit. Écriture des cas de test :

testCreateEmployeeWithNoId : Tester la création d'un employé sans ID préexistant pour s'assurer que l'employé est correctement enregistré dans la base de données. testCreateEmployeeWithIdThrowsException : S'assurer qu'une exception est lancée lorsqu'une tentative est faite pour créer un employé avec un ID déjà défini. testGetEmployeeByIdFound et testGetEmployeeByIdNotFound : Tester la récupération d'un employé par son ID, à la fois pour les cas où l'employé existe et où il n'existe pas. testGetAllEmployees : Vérifier que la méthode retourne correctement la liste de tous les employés. testUpdateEmployee : Tester la mise à jour des détails d'un employé existant et s'assurer que les nouvelles valeurs sont correctement enregistrées. testDeleteEmployee : Confirmer que la suppression d'un employé fonctionne comme prévu et que l'employé est bien retiré de la base de données. Validation des interactions avec la base de données :

Utiliser verify() de Mockito pour s'assurer que les méthodes appropriées du repository sont appelées, telles que save(), findById(), et delete(). Gestion des exceptions :

Tester la gestion des exceptions pour confirmer que les erreurs sont gérées correctement selon les spécifications de l'application. Critères d'acceptation :