Formation Test Driven Development TDD

ParcoursDevLogiciel B 1

La formation Test Driven Development est une formation se focalisant sur l’une des pratiques essentielles du monde de la Programmation Logicielle. Cette formation est accessible pour les langages : Java, .Net, C++, js, Unity3D

Formation TDD (Test Driven Develpment)

Nos Prochaines Dates avec Java/J2EE

Test Driven Development en Java
03-05juil.2024
21 heures, soit 3 jours de formation
PARIS
08 - Software Craftmanship / Ingénierie
1 300 € HT
Test Driven Development en Java
18-20déc.2024
21 heures, soit 3 jours de formation
ON LINE
08 - Software Craftmanship / Ingénierie
1 300 € HT

Nos Prochaines Dates avec C#/.Net

Aucune date de planifiée. Disponible en Intra-entreprise.

Besoin de précisions ?

Technique d’eXcellence : Test – Code – Refactoring

Description

Formation TDD, Certifié par AgilBee

Cette formation Test Driven Development est recommandée pour tous ceux qui cherchent un moyen efficace d’améliorer la qualité de leur logiciel. Elle consiste à développer un logiciel en l’enveloppant judicieusement d’une série de tests unitaires et à faire émerger une architecture au fil des tests en l’alignant avec la vision changeante du périmètre fonctionnel recherché.

Cette formation a aussi été conçue pour ceux qui vivent avec un bugtracker rempli à craquer, ils verront comment désendetter techniquement leur application au cours du temps tout en faisant évoluer le logiciel à la demande des clients. Au cours de la formation, vous découvrirez de nombreuses techniques ; vous apprendrez à faire de la conception simple, du refactoring, de la conception émergeante, à implémenter des Mocks et à utiliser le Test Driven Requirement et/ou le Behavior Driven Development.

Objectifs Pédagogiques

A l’issue de cette formation de 3 jours (21 heures), les participants seront capables de :

    • Concevoir et réaliser des produits logiciels autour de tests unitaires et de recette
    • Comprendre l’importance des tests dans la production de logiciels
    • Remanier et consolider vos applications existantes en introduisant des tests
    • Situer la pratique du développement piloté par les tests dans le contexte de la gestion de projet en général.
Programme Indicatif

I. TOUR DE TABLE & INTRODUCTION : LES TESTS UNITAIRES AUTOMATISÉS

    • Pourquoi tester ?
    • Propriétés des tests automatisés
      • i. Acteur, Action, Assertion (3A)
      • ii. Rapides, Indépendants, Reproductibles, …
      • iii. Principe d’isolation des tests pour la reproductibilité
    • Quels sont les faux obstacles pour faire des tests?
    • Stratégies de test
      • i. Tester les conditions limites
      • ii. Tester relation croisée et inverse
      • iii. Tester les cas d’erreurs et les exceptions
      • iv. Tester la performance
        Où s’arrêter ?
      • i. Doit-on tester les méthodes privées ?
      • ii. Est-ce que les tests doivent être exhaustifs ?
        Tests et les approches agiles

II. XUNIT PATTERNS : LES FONDAMENTAUX

  • xUnit
  • Assertions et Programmation par Contrat
  • Organisation des tests
    • i. Conventions pour les tests
    • ii. Suites de test et exécutions
      Travaux Pratiques : Mise en œuvre de tests unitaires

III. XUNIT PATTERNS : INDÉPENDANCE AVEC LES DOUBLURES

  • Principe de fonctionnement des doublures
  • Définition : Mocks, Fakes, Stubs and Dummies
  • Travaux Pratiques : Mise en œuvre des mocks sans framework

IV. TEST DRIVEN DEVELOPMENT

  • Cycle de développement
  • Remaniement de code : Refactoring
  • Conception émergeante
  • Travaux Pratiques : Kata du bowling

V. MODÉLISATION ET TEST DRIVEN DRIVEN DEVELOPMENT

  • Modélisation en mode TDD : Quick Design Session
  • Best Practices : Programmation Orientée Objet
    • i. Open Close Principle : O.C.P.
    • ii. Don’t Repeat Yourself : D.R.Y.
    • iii. Single Responsability Principle : S.R.P.
    • iv. Liskov Substitution Principle : L.S.P.
  • Atelier : Quick Design Session

VI. REFACTORING POUR LA TESTABILITÉ

  • Loi de Demeter
  • Expressions conditionnelles (switch) et polymorphisme
  • Construction simple : Injection de dépendance
  • Travaux Pratiques : Mise en œuvre refactoring de code existant (Guice ou Spring framework)

VI. TESTS D’INTÉGRATIONS

  • Tester unitairement les bases de données
  • Tester une application concurrente
  • Travaux Pratiques

VII. TESTS FONCTIONNELS

  • Tester les applications Web
    • i. Test par analyse HTML
    • ii. Test des servlets
    • iii. Test des contrôleurs
  • Tester les interfaces graphiques
  • Travaux Pratiques sur les tests fonctionnels

VIII. SPÉCIFICATION PAR L’EXEMPLE

  • Behaviour Driven Development (BDD)
  • Test Driven Requirement (TDD)
  • Acceptance Test Driven Development (ATDD)
  • Travaux Pratiques sur les spécifications par l’exemple

IX. INTÉGRATION CONTINUE

  • Pratiques et organisation
  • Outils et indicateurs qualité
  • Travaux Pratiques sur les outils de couvertures de test et autres outils de qualité logicielle
  • Travaux Pratiques : Organiser les packages avec JDepend

CONCLUSION

  • Test First vs Test After
  • Pair programming vs Side by Side Programming
  • Adoption du TDD
  • Le Coding Dojo de l’AgileDojo

Questions – Réponses

Pré-Requis

Il est demandé aux participants de connaître les notions de base d’un langage de développement, et d’apporter un ordinateur.

Pédagogie
  • Théorie : 30 % (support de cours, slides)
  • Pratique : 70 % (ateliers+ programmation)
Public

Développeur, Chef de projet, Coach/ScrumMaster

Modalités d'Evaluation et Suivi

Evaluation lors des ateliers tout au long de la formation, évaluation des acquis en fin de formation, feuille d’émargement signée à la 1/2 journée, attestation de présence remise en fin de formation.

    Nicolas Delahaye

    Nicolas Delahaye

    Coach-Instructeur

    Badge et Certificat

    En suivant cette formation, obtenez votre badge et son certificat numérique.
    certificat badgeBadge numérique vérifiable
    certificat safeAccédez à votre coffre-fort
    certificat inPubliez en un clic sur votre profil LinkedIn
    certificat pdfTéléchargez le certificat en PDF
    certificat communiquerCommuniquez le logo sur vos supports
    certificat sharePartager sur les réseaux :
               Facebook, Twitter, LinkedIn, WhatsApp
    certificat blockchainCertificat hautement sécurisé
               par Blockchain et OpenBadges

    Taux de Satisfaction

    100% de satisfaction sur 1 an (Janvier 2023)

    Formation

    TARIF

    INTER : à partir de 1 300€ HT
    Prix par stagiaire pour 3 jours.
    INTRA : Nous consulter

    DURÉE : 21 heures sur 3 jours

    GROUPE : Maximum de 8 personnes
    Modalité d’Accès aux Personnes Handicapés à la Formation
    Nous contacter pour répondre à vos besoins : rh@agilbee.com

    S’informer, Demander un Devis ou S’inscrire

    Pour s’informer sur nos prestations, vous pouvez faire une Demande de Devis en cliquant sur le bouton “Demande de Devis” de la formation souhaitée. Vous obtiendrez alors les documents automatiquement. Vous pouvez aussi faire une demande par téléphone ou remplir le formulaire de contact si vous désirez une formation en INTRA, ou toute autre information.