Atelier Unit-Testing Angular
Fondamentaux & Test-Driven Design

Lâunit-testing ou plus particuliĂšrement lâunit-testing front-end est indĂ©niablement dans le top 3 des sujets les plus complexes associĂ©s au dĂ©veloppement dâapplications Angular.
Face Ă cette complexitĂ©, il est tentant de renoncer mais Ă quel prix ? Certes, il est possible de dĂ©velopper une application sans tests unitaires mais est-ce rĂ©ellement plus rapide ? Quâadvient-il de la maintenabilitĂ© du code quelques mois ou Ă peine quelques semaines plus tard ? Pourrons-nous refactoriser lâapplication et la dĂ©ployer rĂ©guliĂšrement en toute sĂ©rĂ©nitĂ© au fur et Ă mesure quâelle se complexifie et quâelle vieillit entre nos mains ?
Ce workshop prĂ©sente Ă travers des exercices pratiques, des techniques pragmatiques dâunit-testing de composants et de services Angular. Vous y dĂ©couvrirez Ă©galement comment Ă©crire des tests comprĂ©hensibles, maintenables et surtout rentables.
Objectifs
Lors de ce workshop, vous apprendrez Ă :
implĂ©menter des tests unitaires pour vos applications Angular avec lâapproche Test-Driven Development,
choisir le bon type de tests à implémenter en fonction du contexte,
découpler les tests du code pour faciliter le refactoring,
implémenter des tests unitaires maintenables et compréhensibles.
Réservation / Information
https://marmicode.eventbrite.fr
...ou contactez-nous sur [email protected] et appelez-nous au +33 4 26 83 61 92 pour toutes vos questions.
Déroulement de la journée
9h00 : Début de l'atelier.
12h30 - 14h : Déjeuner.
17h30 : Fin de l'atelier
17h30 - 19h : Apéro-discute.
Le Lieu
Le lieu reste à définir en fonction du nombre de participants.
Prérequis
Curiosité et bonne culture Web.
FamiliaritĂ© avec lâĂ©cosystĂšme Angular (e.g. savoir crĂ©er des composants, implĂ©menter et utiliser des Inputs / Outputs).
Un ordinateur portable.
Programme
Introduction au testing
Pourquoi tester ?
Les différentes types de test.
Un exemple de test unitaire.
Stratégie de testing
Que faut-il tester et comment ?
Définition d'une unité de code.
Classicists vs Mockists.
Exercice : ImplĂ©mentation dâun premier test unitaire.
Debugging avec Karma.
Jest
Avantages et inconvénients.
Mise en place de Jest.
Debugging avec Jest.
Test-Driven Development
Origines et intĂ©rĂȘt du Test-Driven Development.
Tips & tricks.
Exercice Bonus : Timeboxed TDD & TCR.
Service Testing
Exercice : Implémenter un service avec une approche pilotée par les tests (ou Test-Driven Development).
Mocks, Spies & Stubs
Mocks vs Spies vs Stubs.
Surcharge de lâinjection de dĂ©pendance Angular.
Exercice : Simuler le comportement dâune dĂ©pendance avec des Mocks, Spies & Stubs.
Component Testing
Implémentation de tests unitaires pour un composant.
Les différents types de tests de composants : Integration vs Shallow vs Isolated.
Interaction avec le DOM.
Exercice : Integration testing dâun composant.
Exercice : Shallow testing.
Exercice : Testing des Ă©changes Ă base dâInputs & Outputs.
Http Testing
Mocking des échanges HTTP.
Votre Formateur

Younes est formateur, coach en eXtreme Programming et Google Developer Expert en Angular et Web Technologies.
AprĂšs 10 ans dâexpĂ©rience en dĂ©veloppement web, Younes est convaincu que la qualitĂ© dâun produit repose principalement sur le Collective Ownership et la qualitĂ© de code. Son but est de propager cette culture de partage et dâamĂ©liorer la qualitĂ© des produits par lâĂ©change et le levier de la Developer eXperience.
Depuis plus de 5 ans et avec un focus autour d'Angular, Younes forme et accompagne des équipes allant de jeunes startups aux institutions européennes en passant par des banques ou sociétés de service.
Il est Ă©galement lâauteur de ce guide... et prend parfois le temps dâaller bavarder aux meetups et confĂ©rences sur diffĂ©rents sujets tels que Les Composants Interchangeables Ă lâAngularConnect ou le Limbo Ă l'AngularUp.
Mis Ă jour