Autoplay
Autocomplete
Previous Lesson
Complete and Continue
Développe plus rapidement et sereinement des logiciels de qualité
Introduction
Présentation du cursus (4:56)
Qu'est-ce que le Software Craftsmanship ? (3:51)
L'ingénierie logicielle (5:09)
Qu'est-ce qu'un logiciel de qualité ? (3:28)
L'importance de travailler de façon itérative (3:28)
L'importance de travailler de façon incrémentale (4:18)
L'importance du feedback (3:59)
La pipeline de déploiement (4:45)
Testabilité et architecture
Introduction (2:09)
Le problème avec les tests manuels (5:05)
Les différents types de use case au sein d'une application (8:27)
Anatomie d'une architecture testable (6:28)
Structure d'un test unitaire (7:11)
Qu'est-ce qu'un bon test unitaire ? (7:05)
L'importance de l'inversion de dépendances (6:35)
Les test doubles (4:28)
Tester un vrai use case (7:00)
L'importance d'écrire des tests concis et lisibles (4:25)
Écrire des tests maintenables : Le pattern Object Mother (3:17)
Écrire des tests maintenables : Le pattern Builder (2:56)
Écrire des tests concis et lisibles : Principe D.A.M.P et fixture (3:52)
Sociable unit tests, solitary unit tests, et quiproquos sur les tests unitaires (12:38)
Les différents types de tests (7:54)
L'architecture hexagonale (5:00)
Implémentation d'une clean architecture de A à Z en TDD
À lire avant de commencer
Introduction (8:55)
Example Mapping (13:32)
Initialisation du projet (4:36)
Structure d'un test : raconter l'histoire dans le code (10:16)
Structure d'un test : connecter les étapes (7:07)
Création d'un use case simple et inversion de dépendances (13:53)
Implémentation de la première règle métier : le message trop long (8:09)
Création d'une test fixture et implémentation des messages avec que des espaces (7:06)
Création de la commande post avec commander (10:32)
Création d'un adapter FileSystemMessageRepository (5:14)
Implémentation du use case ViewTimelineUseCase (32:00)
Shift Gear Down : S'aider de tests unitaires plus fins (22:31)
Implémentation de la commande console "view" (13:28)
Factorisation de fixture et builders (23:01)
Création d'un use case EditMessage (25:24)
Création d'un value object MessageText (8:35)
Test d'intégration du FileSystemMessageRepository (23:02)
Création d'une classe Message avec encapsulation de la serialization et deserialization (12:55)
Screaming Architecture (11:06)
Exercice : Implémente le use case FollowUser (6:15)
Première implémentation du FollowUserUseCase (13:36)
Implémentation du ViewWallUseCase (31:34)
TDD sur un test d'intégration ! (23:32)
Base de données - Des repositories avec Prisma (21:50)
Test d'intégration avec TestContainers (31:16)
Implémentation d'une API fastify simple (14:11)
Dissocier outpout de CLI et d'API grâce à un Presenter (19:37)
Gérer les erreurs différemment avec un objet Result (10:06)
Passage sous NestJS (54:08)
Implémenter les tests end-to-end (26:49)
Première implémentation du FollowUserUseCase
Lesson content locked
If you're already enrolled,
you'll need to login
.
Enroll in Course to Unlock