Que sont les tests unitaires, les tests d'intégration, les tests de fumée et les tests de régression ? Quelles sont les différences entre eux et quels outils puis-je utiliser pour chacun d'eux ?
Par exemple, j'utilise JUnit et NUnit pour les tests unitaires et les tests d'intégration. Existe-t-il des outils de test de fumée ou de test de régression ?
Chacun aura des définitions légèrement différentes, et il y a souvent des zones d'ombre. Cependant :
anecdote historique apocryphe : le "test de la fumée" vient de l'ingénierie des sous-marins (héritée de la plomberie) où de la fumée littérale était pompée dans la coque pour voir si elle en ressortait, ce qui serait plutôt un échec dramatique pour un sous-marin !