Les praticiens du développement de logiciels utilisent le terme unité pour désigner le plus petit composant testable d'un produit logiciel et l'expression test unitaire pour désigner le processus de validation du fonctionnement attendu d'une unité. Au cours des vingt dernières années, ces praticiens se sont de plus en plus intéressés aux tests unitaires automatisés et l'expression « framework de tests unitaires » en est venue à désigner le mécanisme utilisé pour faciliter les tests unitaires automatisés.
Les développeurs de logiciels, y compris les développeurs JSL, ont tout intérêt à ce que le logiciel qu'ils développent fonctionne comme prévu. Outre cette motivation évidente, il existe deux autres raisons :
1. Évolution du logiciel : le logiciel évolue au fil du temps. En général, cela est dû à l'ajout ou à la modification de fonctionnalités, mais il arrive parfois que le logiciel évolue en raison d'une refactorisation. Une suite de cas de tests unitaires correctement entretenue, utilisée régulièrement pour valider le produit, peut garantir que le produit logiciel conserve son comportement attendu au fur et à mesure de son évolution. Les unités qui régressent (se cassent ou cessent de fonctionner) au fur et à mesure de l'évolution du produit sont rapidement identifiées.
2. Documentation exécutable : les cas de test unitaires documentent le comportement attendu des produits logiciels. L'un des avantages des tests unitaires automatisés est que les cas de test agissent comme une documentation exécutable. Par conséquent, tant que les cas de test sont régulièrement utilisés pour valider le produit à mesure de son évolution, ces cas de test sont susceptibles de refléter le comportement attendu correct du produit logiciel, contrairement à la documentation écrite statique.
Ces dernières années, les principaux défenseurs des tests unitaires en général, et des tests unitaires automatisés en particulier, ont été la communauté eXtreme Programming (XP). En partie grâce à l'enthousiasme de cette communauté, des frameworks de tests unitaires sont désormais disponibles pour tous les principaux langages de programmation.

Pour en savoir plus sur la manière dont JMP utilise les tests unitaires dans son développement logiciel, téléchargez le PDF ci-joint de l'article complet des développeurs JMP Joseph Morgan et Xan Gregg.