Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Geek Time Juillet 2017 : TDD coté Front/JS

399 views

Published on

TDD coté Front/JS
Par Mouhcine LAHSSAINI, Consultant OLBATI
Au Geek Time de Juillet 2017

Published in: Software
  • Be the first to comment

Geek Time Juillet 2017 : TDD coté Front/JS

  1. 1. TDD coté Front/JS Geek Time - Juillet 2017 Mouhcine LAHSSAINI Consultant - OLBATI
  2. 2. OLBATI - Geek Time - Juillet 2017 TDD coté Front/JS ●C'est quoi le TDD ? ●Tests list ●Fake it, triangulate, obvious implementation ● Refactoring ●Données de test ●Mock et Stub ●Demo ●Conclusion !2
  3. 3. OLBATI - Geek Time -Juillet 2017 Le cycle de TDD !3 Ecrire un test et vérifier qu’il ne passe pas Ecrire le code le plus simple qui fasse passer le test Supprimer les répétitions, améliorer la lisiblité
  4. 4. OLBATI - Geek Time -Juillet 2017 !4
  5. 5. OLBATI - Geek Time - Juillet 2017 • Que devriez-vous tester? – Lister tous les tests. – Ajouter des tests suite au nouvelles idées. !5 Que devriez-vous tester? Avant de commencer, faites une liste de tous les tests que vous aurez à écrire. Pendant la session, lorsqu’une idée arrive, ajoutez un test à votre liste et continuez de programmer.
  6. 6. OLBATI - Geek Time - Juillet 2017 Pattern: Fake it ‘til you make it ●Vous avez écrit un test. ●Vous n’avez pas en tête une implémentation simple: • Dans le code de production, faite passer le test en renvoyant la valeur attendue par le test !6
  7. 7. OLBATI - Geek Time - Juillet 2017 Pattern: Triangulate ●Un premier test grâce à un Fake It. ●Vous souhaitez avancer pas à pas: •Ecrivez un second test •Ecrivez le code le plus simple qui fasse passer ce test sans casser le premier !7
  8. 8. OLBATI - Geek Time -Janvier 2017 Pattern: Obvious Implementation •Ecrivez un test simple •Faite passer le test en écrivant l’implémentation évidente !8
  9. 9. OLBATI - Geek Time - Juillet 2017 Refactoring ●C’est une technique de restructuration du code existant: modifier sa structure sans changer son comportement externe ●Ensemble de petites modifications dans le but d’améliorer le code ●Le système se doit de toujours fonctionner suite à chaque refactoring. Eviter les régressions !9 Quoi ?
  10. 10. OLBATI - Geek Time - Juillet 2017 Refactoring ●Améliorer la structure du logiciel ●Rendre le code plus lisible et maintenable ●Faciliter les futurs changements ●Plus de flexibilité ●Augmenter la réutilisabilité ●Faciliter la recherche de bugs !10 Pourquoi ?
  11. 11. OLBATI - Geek Time - Juillet 2017 Données de test ●Quelles données utiliser pour un test? •Utilisez des données qui rendent le test facile à lire et à suivre. !11
  12. 12. OLBATI - Geek Time - Juillet 2017 Mock et Stub ●Stub: fournir un résultat prédéfini a chaque fois la fonction est appelée ●Mock: est un espion sur un objet !12
  13. 13. OLBATI - Geek Time - Juillet 2017 FIRST • First: le test est écrit en premier • Independent: le test s’exécute indépendamment des autres • Repeatable: le test produit le même résultat à chaque appel • Simple: le test met en œuvre le minimum de données • self-Testing: le test est automatisé !13
  14. 14. OLBATI - Geek Time - Juillet 2017 DEMO !14
  15. 15. OLBATI - Geek Time - Juillet 2017 Conclusion ●Passer plus de temps à penser aux tests que à la recherche des bugs dans notre code ●Le TDD est un support indispensable du refactoring de code !15
  16. 16. OLBATI - Geek Time - Juillet 2017 !16 Thanks! Any questions? mouhcine.lahssaini@olbati.com

×