Disclaimer
						
							- Il s'agit d'une introduction.
- Je ne parlerai pas
								- de mock,
- de tests d'intégration.
- Les exemples seront en java.
oh. et oui, il se peut que j'exagère un peu... :)
					
				
				
					
						Ma définition
						
							- Unit test
- un test qui vérifie un comportement d'un morceau de code. 
Pourquoi ?
						
							- parce que c'est à la mode !?
- les tests sont une preuve que votre code fait ce qu'il est supposé faire.
- au plus tôt on trouve le problème, le moins cher coûte sa résolution.
- ils donnent confiance lorsqu'on fait des modifications.
- rendre un code testable (et testé) conduit souvent à un meilleur design.
- les tests expliquent ce que fait votre code.
Qualité d'un test unitaire
						
							- Fast
- Isolated
- Repeatable
- Self-validating
- Timely
						
						
						
						Test After.
						Les tests après.
					
					
				
					
					
						(faux) problèmes
						C'est bon ça marche, pas besoin de test.
						Je suis à la bourre, et j'ai du fonctionnel plus important. J'écrirai les tests plus tard.
						Les tests c'est pour ceux qui savent pas coder.
					
					
				
					
						(gros) problèmes
						
							- on peut avoir écrit du code qui n'est pas testable.
- on ne voit jamais les tests échouer
- souvent, les tests sont écrits en étudiant le code.
Test First
						Les tests d'abord.
					
					
						Les tests d'abord.
						
							- Réfléchir à ce que je veux faire.
- Écrire les tests correspondants.
- Écrire le code qui les fera passer.
						
						Enjoy.
					
					
					
				
				
					
						TDD : Test Driven Developpement
						Développement guidé par les tests
					
					
						Développement guidé par les tests
						
							- Écrire exactement un test qui échoue.
- Le faire passer.
- Nettoyer.
						
						
						
						Répéter.
					
					
						Test Driven Developpement
						
							- Red
- Green
- Refactor
						
						That's all !