Testing Angular Pragmatique

Apprendre à tester vos applications Angular avec une stratégie pragmatique et efficace

  • Imprimer le programme Imprimer le programme
  • Filière :

    Méthodes, Tests, normes

  • Sous-filière :

    Testing logiciel

  • Référence

    DW-TAP

  • Durée

    2 jours

  • Prix unitaire HT

    1450 €

Objectifs pédagogiques Objectifs pédagogiques

  • Maîtriser le coût des tests et adopter une stratégie de testing pragmatique et rentable
  • 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

Public cible Public cible

  • Développeurs Angular

Pré-requis Pré-requis

Une expérience de testing sera bénéfique afin de bien saisir les bonnes pratiques et astuces exposées lors de cette formation

Programme de la formation Programme de la formation

Introduction au testing

  • Pourquoi tester ?
  • Les différents types de test
  • Définition d’une unité de code
  • Un exemple de test unitaire

Jest

  • Avantages et inconvénients
  • Mise en place de Jest

Test-Driven Development

  • Origines et intérêt du Test-Driven Development
  • Progressive TDD
  • Exercice : Tester un service Angular avec l’approche Progressive TDD
  • Exercice : Debugging avec Jest
  • Astuces et bonnes pratiques

Timeboxed TDD & TCR

  • Refactor vs. Rewrite: retour aux définitions
  • Timeboxed TDD
  • Limbo
  • TCR : Test && Commit || Revert

Test Doubles

  • Mocks vs Spies vs Stubs vs Fakes
  • Classicists vs Mockists
  • Choisir la bonne approche pour “overrider” l’injection de dépendance Angular
  • Type-Safe testing
  • Choosing the right way to override Angular dependency injection
  • Exercice : Simuler le comportement d’une dépendance avec Mocks, Spies & Stubs

Component Testing

  • Tester un composant
  • Les différents types de testing de composant : Integration vs. Shallow vs. Isolated
  • Interaction avec le DOM
  • Exercice : Shallow testing
  • Exercice : Integration testing
  • Exercice : Testing des inputs / outputs
  • Exercice : Interaction avec les formulaires

Angular CDK Test Harness

  • L’histoire d’Angular CDK Test Harness
  • Fonctionnement
  • Exercice: Utilisation d’un test harness
  • Exercice: Implémentation d’un test harness

Cypress Component Testing

  • Brisons les frontières de l’”isolated testing” avec Cypress Component Testing
  • Exercice : Isoler et tester un composant avec Cypress
  • Exercice : Réutiliser le test harness

Visual Regression Testing

  • Tester la présentation
  • Détecter les régressions visuelles avec Cypress Component Testing & Percy

Définir une Stratégie de Testing

  • Que faut-il tester et comment ?