Construire des API faisant TDD dans Node et Typescript (et Jest)
Dans ce cours, nous allons implémenter à partir de zéro une API REST dans Node en utilisant Typescript et en testant avec Jest, mais en utilisant Test Driven Development (TDD). Au cours de cet exercice, nous suivrons l’approche Inside-out TDD également connue sous le nom de classicist ou appelée aussi parfois Chicago school TDD. Nous allons partir du plus profond de notre application et construire notre chemin jusqu’à ce que nous ayons satisfait à toutes les exigences de l’entreprise, étant à tout moment couverts par nos propres tests.
L’API que nous allons construire est un clone du site One Time Secret. Nous allons créer une application qui stocke nos secrets et nous fournit une URL pour y accéder plus tard, mais à condition que nous ne puissions accéder à cette URL qu’une seule fois. Chaque fois que nous tentons de récupérer à nouveau le même secret, en appuyant une deuxième fois sur la même URL, nous recevons une erreur. Nous utiliserons MongoDB comme couche de persistance.
Au début de ce cours, nous analyserons les exigences de l’entreprise que nous venons de mentionner et nous verrons comment nous traduisons cela en code fonctionnel et bien conçu. Nous verrons comment nous concevons l’application et comment nous l’implémentons, en utilisant une approche TDD ayant tout le temps notre code de production sous contrôle. Nous nous inspirerons de DDD, de l’arc hexagonal et du CQRS pour concevoir notre solution.