Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Introduction aux tests automatisés et au TDD (v...

Introduction aux tests automatisés et au TDD (v. 2016-08)

- Introduire le concept de tests automatisés à son équipe (développeurs, PO, gestionnaires, analystes, etc.)
- Générer une discussion concernant l'automatisation des tests
- Pourquoi automatiser?
- Comprendre les pièges associés (mauvaise pratiques) à l'automatisation!
- Qu'est-ce qu'un vrai test unitaire?
- Introduction au TDD et à ses effets

Tweet

More Decks by Félix-Antoine Bourbonnais

Other Decks in Programming

Transcript

  1. 5 5 Je suis… / Formateur / Conférencier / Coach

    technique / Coach Agile Expert en… / Tests automatisés / Pratiques de développement / Architecture évolutive / Spécification par l’exemple et BDD / Agilité et Scrum Félix-Antoine Bourbonnais
  2. 11

  3. Image de Robert. C. Martin Utilisée avec permission de l’auteur

    / Use with the permission of the author. Quel est le problème?
  4. 18

  5. Mission: Innover 6 000 développeurs >1 500 projets >20 changements/minute

    50% du code change tous les mois Chiffres de 2010 Dans l’industrie: Google 19
  6. « If it can be automated and the problem doesn’t

    require human cleverness and intuition, then it should be automated » -- How Google Tests Software, James A. Whittaker Automatisé ? 20
  7. 21 On parlait déjà de déploiement continu http://thoughtworks.fileburst.com/assets/technology-radar-april-2010.pdf Technology Radar

    ThoughtWorks Avril 2010 Les tests automatisés et le TDD sont sortis du radar depuis longtemps! Même année que Subversion !?!! Hem……… sérieux ???
  8. « Practices like TDD and BDD are widespread and applied

    almost unquestionably. It has been a while since I’ve seen teams that do not have considerable tests at the lower levels (unit, integration, component). » -- Fabio Pereira, ThoughtWorks, USA https://www.thoughtworks.com/insights/blog/introducing-software-testing-cupcake-anti-pattern?utm_campaign=software- testing&utm_medium=social&utm_source=twitter
  9. 23

  10. 24 Pourcentages selon Google. La pyramide ! Bout en bout

    Service Unitaire % du portfolio de tests Large (L) Moyen (M) Petit (S) ~10% ~20% ~70%
  11. Ce que l’on a généralement… Image de stevendepolo sur Flickr

    25 Tests de haut niveau lourds, exhaustifs et utilisant la BD Tests unitaires…
  12. Fragilité ! Image par Gamma-Ray Productions sur Flickr Ce qui

    vous attend au détour! Danger! On ne rigole pas…
  13. Types versus niveaux 27 Niveaux Types Classement par la portée

    Exemples: Petit / Moyen / Large Classement par l’objectif du test Exemples: Unitaire / Bordure / Fonctionnalité / …
  14. Exemples Tests de Story Tests A/B Expérience utilisateur Simulations Tests

    exploratoires Tests de flots de travail Tests d'utilisabilité UAT (par l'utilisateur) Tests unitaires (type) Tests développeurs Tests de composantes Tests de performance Tests de charge et capacité Tests de sécurité Attributs de qualité (...ilities) Types de tests Tiré du livre More Agile Testing Les types de tests… Orienté AFFAIRES Orienté TECHNOLOGIE Guide le DÉVELOPPEMENT Critique le PRODUIT
  15. 30

  16. Les tests unitaires constituent le niveau le plus bas et

    le plus isolé pour réaliser un test Niveaux de test… 34 Large Moyen Petit Vous êtes ICI
  17. 35

  18. 36 Cycle du TDD 36 Écrire un test qui échoue

    Faire passer le test Réusiner 1 2 1
  19. « TDD is not about validating systems. It is about

    writing better software. » -- Tim Ottinger Ce n’est pas une technique de validation…
  20. « Testing as a development tool » -- Startup Lab

    workshop: Test-Driven Design https://www.youtube.com/watch?v=AyvYRWWmYSI Le TDD c’est bien plus qu’une technique de test! 41
  21. Qualité Le code fonctionne Limiter les régressions Design Pouvoir réusiner

    Avoir de la documentation (synchronisée) Avoir une meilleure architecture Affaires Avoir une rétroaction rapide Répondre aux besoins Tiré de Startup Lab workshop: Test-Driven Design https://www.youtube.com/watch?v=AyvYRWWmYSI Pourquoi l’entreprise veut-elle faire du TDD? 44
  22. 45

  23. 52 Merci Notre site elapsetech.com Notre blogue developpementagile.com Nos Twitter

    @fbourbonnais | @elapsetech Mon courriel [email protected] Mon LinkedIn linkedin.com/in/fbourbonnais/fr conferences.elapsetech.com Diapositives Nos présentations, chez vous!