Programmation par les tests
Tags :
- enseignement
- ECM
TBD : reprendre le cours papier TBD : livre sur le refactoring TBD : livres récent ?
Outils
Avec python
- Installation et prise en main de vsc
- Utiliser python avec vsc. Il pourra être utile de garder sous le coude le tutoriel d'utilisation un terminal
- black et code coverage
- Projet 1 : mise en œuvre d'un projet informatique
Avec js
TBD
Organisation et conduite d'un projet informatique
TDD
Que tester
Tout sauf l'aléatoire (un test doit être répétable).
- mock pour les BDs ou les fonctions compliquées (TBD en pytest)
test_[nom du fichier que l'on teste].py
test_[nom de la fonction que l'on teste]
- si plusieurs tests :
test_[nom de la fonction que l'on teste]_[ce que l'on teste]
- un test est unitaire : il doit tester une unique chose (donc si plusieurs assert, ils sot tous là pour tester une chose). Si le teste rate, son nom doit nous dire ce qui rate et la méthode et quoi dans la méthode.
Pourquoi
- développement incrémental (code for today)
- refactoring aisé (le code évolue toujours)
- utiliser avant de créer (une fonction est là pour être utilisée)
Comment
- il faut persévérer avant qu'on ne puisse plus s'en passer
- le faire sur tous les projets, le TDD aide même pour les petits projets, même s'il est crucial pour les gros