Je suis actuellement dans une classe de tests de logiciels où pour notre projet de semestre, nous devons effectuer plusieurs types de tests dessus, tels que des tests unitaires et des tests d'intégration. Pour les tests d'intégration, le professeur a dit d'utiliser des simulations et des bibliothèques de simulation (comme EasyMock et Mockito) pour nos tests d'intégration. Je deviens assez confus cependant. Le test d'intégration consiste à tester en dehors des classes, modules, services, etc.
Si vous avez une fonctionnalité qui touche plusieurs composants externes, vous pouvez vous moquer de tous sauf un pour isoler et tester un composant spécifique. Par exemple, supposons que vous ayez une fonction qui appelle un service Web et fasse ensuite quelque chose avec une base de données basée sur les résultats. Vous pouvez écrire trois tests d'intégration:
Si vous exécutez les trois tests et que 1 et 3 échouent, il y a de fortes chances qu'il y ait un bogue dans votre code qui fonctionne avec la base de données, car le seul test réussi a été celui utilisant la connectivité de la base de données fictive.
En général, les tests d'intégration n'utilisent pas de maquette, mais j'ai fait quelque chose comme ça à l'occasion.
On ne sait pas immédiatement ce que l'on entend par Test d'intégration mais l'utilisation de Fakes/Mocks/Test Doubles est une technique valide pour créer des scénarios de test à tous les niveaux dans le - pyramide de tests . [1] [2] [3]