Les tests unitaires c'est bien, les tests d'integration c'est mieux :-) Les tests d'intégrations nous permettent de vérifier l'interaction de notre système avec ses dépendances externes, comme par exemple une base de données.Cependant il peut être difficile d'avoir ces dépendances accessibles. Exemple dans le cas d'une base SQL, il existe des substituts "in-memory" comme H2. Mais ces systèmes ont leurs limites et spécificités et au final ne sont pas exactement identiques à la dépendance réelle. Dans l'idéal, il serait intéressant de pouvoir démarrer des containers Docker à la demande, au cours de nos test, et contenant les dépendances de nos applications. C'est maintenant possible avec TestContainers, voyons une demo avec SpringBoot, JUnit5 et MongoDB.
Les tests unitaires c'est bien, les tests d'integration c'est mieux :-) Les tests d'intégrations nous permettent de vérifier l'interaction de notre système avec ses dépendances externes, comme par exemple une base de données.Cependant il peut être difficile d'avoir ces dépendances accessibles. Exemple dans le cas d'une base SQL, il existe des substituts "in-memory" comme H2. Mais ces systèmes ont leurs limites et spécificités et au final ne sont pas exactement identiques à la dépendance réelle. Dans l'idéal, il serait intéressant de pouvoir démarrer des containers Docker à la demande, au cours de nos test, et contenant les dépendances de nos applications. C'est maintenant possible avec TestContainers, voyons une demo avec SpringBoot, JUnit5 et MongoDB.
Les tests unitaires c'est bien, les tests d'integration c'est mieux :-) Les tests d'intégrations nous permettent de vérifier l'interaction de notre système avec ses dépendances externes, comme par exemple une base de données.Cependant il peut être difficile d'avoir ces dépendances accessibles. Exemple dans le cas d'une base SQL, il existe des substituts "in-memory" comme H2. Mais ces systèmes ont leurs limites et spécificités et au final ne sont pas exactement identiques à la dépendance réelle. Dans l'idéal, il serait intéressant de pouvoir démarrer des containers Docker à la demande, au cours de nos test, et contenant les dépendances de nos applications. C'est maintenant possible avec TestContainers, voyons une demo avec SpringBoot, JUnit5 et MongoDB.