Spring-Boot: Ecrire des tests unitaires & d’integration
willing - 19/03/2020
Tests d’Integration
Dans la partie précédente de notre article, nous avons vu comment tester unitairement un controlleur, un service et un client avec SpringBoot.
Mais il y reste encore des trous dans la raquette!
En effet, nous n’avons toujours aucune garantie que la configuration de notre base de données est correcte. Ni que le contrat d’interface entre notre client et le service distant est respecté. Ni encore que les différentes couches MVC de notre application communiquent bien entre elles.
Ces trois points constituent justement le rôle des Tests d’intégration que nous allons voir dans cette partie.
Configuration des tests d’intégrations
Il est recommandé de séparer les test d’intégration des tests unitaires. En effet les tests d’intégration peuvent être très long, contrairement aux tests unitaires censés être très rapides. Lancer les TIs avec les TUs peut alors devenir très contre productif pour les développeurs.
Les tests d’intégrations doivent être lancés par un outil d’intégration continue, comme la CI (Jenkins, gitlab-ci etc…). Ils peuvent également être lancés sur un poste de dév lors d’évenements d’intégration importants comme un merge sur la branche master par exemple.
Dans cet article, nos test d’intégrations seront dans le répertoire src/integration-test/java.

Pour pouvoir lancer les tests d’intégration avec maven, il faut rajouter la configuration suivante dans le pom.xml
Cette configuration permet de lancer les tests d’intégration avec le plugin maven-failsafe grâce aux commandes mvn verify ou mvn integration-test.
Une fois la configuration mise en place, nous verrons à la page suivante de notre article comment écrire les tests d’intégrations proprement dits.
Étiquettes :
Leave a Comment