Elapse

Tests unitaires automatisés et TDD

Résumé

Améliorer la qualité de votre code et de votre conception en apprenant comment vous laisser guider par les tests unitaires automatisés. 

Durée: 2 jours

Prochains cours offerts

Les dates de formation ne vous conviennent pas ou vous aimeriez adapter le contenu de la formation? Nos formations sont aussi offertes en formation privée ou sur mesure.

Témoignages



Description du cours

Ce cours a pour objectif de familiariser les participants avec les différents tests et à la pratique du développement piloté par les tests (TDD) afin de leur permettre d'en réaliser les bénéfices dans leurs projets et pratique quotidienne. À travers des démonstrations et des exercices concrets, les participants mettront en pratique diverses techniques de tests unitaires afin de leur permettre d'acquérir les réflexes nécessaires et ainsi augmenter leur productivité.

Au delà du TDD, la formation s'adresse également aux personnes et entreprises désirant améliorer ou revoir leurs approches de tests unitaires. Pourquoi mes essais unitaires sont-ils difficiles à maintenir? Quels sont les différents types de tests? Comment améliorer mes pratiques de tests?

Objectifs

Cette formation vise à réaliser des tests logiciels et adopter la pratique du développement piloté par les tests (TDD).

À la fin de la formation, le participant sera en mesure de :

  • Appliquer les techniques afin d'écrire de bons tests automatisés (unitaire, acceptation, etc.);
  • Connaître et mettre en pratique les règles de l'art et bonnes pratiques reliées au cycle rapide : tester, développer et réusiner (refactoring);
  • Écrire des tests unitaires à l'aide d'objets factices (mocks);
  • Différencier les différents types de tests logiciels;
  • Comprendre les implications du TDD sur le design et l'architecture d'un logiciel;
  • Critiquer et analyser l'intégration des techniques dans son équipe de développement;
  • Explorer des techniques avancées de tests.

Contenu

Taxonomie des tests (survol des types de tests)
  • Lesquels? Pour qui? Pour quoi? Quand?
  • Complémentarité des types de tests.
Tests unitaires
  • Bonnes pratiques, motivations, automatisation, mythes

Bonnes et mauvaises pratiques de tests

Développement piloté par les tests (TDD)

  • Cycle du TDD;
  • Règles de l'art;
  • Trucs et astuces;
  • Avantages et inconvénients;
  • Mythes et objections.
  Objets factices (mocks)
  • Motivations et quand utiliser des mocks;
  • Fonctionnement;
  • Techniques d'injection;
  • Trucs et astuces.

Mauvaises odeurs émanant des tests (symptômes à remarquer)

Conception (design) testable (selon le groupe)

 

Contenu contextualisé

Dans la majorité des séances, les participants exposent et discutent de leurs pratiques actuelles. Le formateur les aide à explorer des pistes de solutions afin d'améliorer leurs pratiques de tests.

Généralement, les sujets suivants sont abordés dans ces discussions: architecture et design, orientation objet, testabilité de la persistance et du UI, etc.

FAQ

Q: Je ne suis pas certain si le TDD est la meilleure approche chez moi (contexte particulier)?

R: La formation vous aidera à répondre à cette question. La formation est une bonne occasion pour expérimenter et profiter de l'expérience du formateur pour poser des questions.

 

Q: Je ne pense pas vouloir faire du TDD mais j'aimerais améliorer mes pratiques de tests?

R: La formation montre comment utiliser le TDD et les exercices se déroulent de la sorte. Nous recommandons l'emploi du TDD pour ses bénéfices mais la majeure partie de la formation traite des types de tests et des bonnes pratiques, incluant le TDD. Vous pourrez tirer grandement profit de la formation même si vous choisissez de ne pas appliquer le TDD le lendemain à votre travail.

 

Q: J'ai des problèmes avec mes tests, pourrons-nous regarder cela?

R: Le formateur essaie de toujours répondre aux questions spécifiques et d'utiliser les exemples des participants pendant la formation. S'il s'agit d'une formation privée, il sera possible d'aborder et d'adapter le contenu en fonction de vos questions lors de la formation. Dans les formations publiques, cela dépend, évidemment, du nombre de participants et de leurs intérêts. Si vous souhaitez une formation personnalisée (contenu spécifique et adapté à l'avance, contactez-nous).

 

Méthodologie

Présentations interactives et échanges (45%), démonstrations et exercices pratiques (55%).

Public visé

Architecte, développeur ou toute autre personne ayant à développer des logiciels.

Préalables

Être familier avec un langage orienté objet. Les exercices pratiques pourront être réalisés en: VB, C#, Java, PHP, Ruby et Javascript.

Votre allié en développement logiciel Agile

Calendrier des formations

Montréal, 14 décembre 2017

Professional Scrum Master (PSM)

Formation Professional Scrum Master offerte à l'École de Technologie Supérieure de Montréal du 5 au 6 février 2018.

Montréal (ÉTS), 05 février 2018

Concepts orientés-objet avancés appliqués au développement agile

Formation "Concepts orientés-objet avancés appliqués au développement agile" offerte à Montréal les 16 et 16 février 2019.

Montréal (ÉTS), 15 février 2018

BDD: analyse et spécification des besoins par l’exemple

BDD: analyse et spécification des besoins par l’exemple offerte à Montréal le 22 février 2018.

Montréal (ÉTS), 22 février 2018

Tests et assurance qualité en agilité

Formation Tests et assurance qualité en agilité offerte à Montréal le 23 février 2018.

Montréal (ÉTS), 23 février 2018

Gestion de projet Agile : les principes fondamentaux

Formation Gestion de projet Agile : les principes fondamentaux offerte à l'École de Technologie Supérieure de Montréal.

Montréal (ÉTS), 02 mars 2018

Fonctionnement et gestion d'une équipe Scrum

Fonctionnement et gestion d'une équipe Scrum offerte à Montréal le 16 mars 2018.

Montréal (ÉTS), 16 mars 2018

Tests unitaires automatisés et TDD

Formation Tests unitaires automatisés et TDD offerte à Montréal les 22 et 23 mars 2018.

Montréal (ÉTS), 22 mars 2018

Développement logiciel Lean : les principes fondamentaux

Formation Développement logiciel Lean : les principes fondamentaux offerte à l'École de Technologie Supérieure à Montréal en mars 2018.

Montréal (ÉTS), 23 mars 2018

Tests unitaires automatisés et TDD

Formation Tests unitaires automatisés et TDD offerte à Québec les 29 et 30 mars 2018.

Québec, 29 mars 2018

Tests et assurance qualité en agilité

Formation Tests et assurance qualité en agilité offerte à Québec le 19 avril 2018.

Québec, 19 avril 2018

BDD: analyse et spécification des besoins par l’exemple

BDD: analyse et spécification des besoins par l’exemple offerte à Québec le 20 avril 2018.

Québec, 20 avril 2018

Concepts orientés-objet avancés appliqués au développement agile

Formation Concepts orientés-objet avancés appliqués au développement agile offerte à Québec les 3 et 4 mai 2018.

Québec, 03 mai 2018

TDD avancé

Formation TDD Avancé offerte à Montréal les 10 et 11 mai 2018.

Montréal (ÉTS), 10 mai 2018

Consulter le catalogue>

Nouvelles

Formation "Designing microservices" avec Sam Newman

Sam Newman présentera sa formation/atelier "Designing microservices" en décembre 2017 à Montréal et à Québec.

04 septembre 2017

Conférences internationales WICSA et CompArch à Montréal

Conférences internationales WICSA et CompArch à Montréal

29 avril 2015

Formations offertes au printemps

Différentes formations spécialisées en génie logiciel et développement Agile sont encore disponibles pour vous ce printemps. Découvrez-les et réservez votre place dès maintenant !

06 février 2015

Deux de nos formateurs agréés par Emploi Québec

Nos formateurs, Félix-Antoine Bourbonnais et Pascal Roy, sont maintenant agréés dans le cadre de la Loi favorisant le développement et la reconnaissance des compétences de la main d’oeuvre d’Emploi Québec.

19 janvier 2015

Retour sur l’Agile Tour de Québec, édition 2014

L'édition 2014 de l’Agile Tour de Québec a été un vif succès pour l'équipe d’Elapse Technologies. Les salles étaient pleines et les critiques élogieuses.

10 novembre 2014

Toutes les nouvelles>

Blogue développement Agile

Étude sur l’économie créative: Éléments du succès de 9 entreprises agiles

Présentation des faits saillants d'une étude sur l'économie créative qui a permis de vi...

09 décembre 2015

Boxstarter : Comment standardiser et simplifier la configuration d’un poste de développement

Boxstarter est un outil qui peut vous aider à simplifier et standardiser l'installation...

07 octobre 2015

Tout le dossier Agile 2015

Pour aider nos lecteurs à revoir tout notre dossier #Agile2015, voici les liens vers no...

23 septembre 2015

Agile 2015: Nos impressions et les tendances (partie 3/3)

À la fin du mois d’août, Pascal et Félix-Antoine sont allés à la plus grande conférence...

17 septembre 2015

Agile 2015: Nos impressions et les tendances (partie 2/3)

À la fin du mois d’août, Pascal et Félix-Antoine sont allés à la plus grande conférence...

17 septembre 2015

Tous les billets>