C'est quelque chose qui me trouble depuis un moment. Vaut-il vraiment la peine de tester un client API?
Supposons que vous créez une petite classe pour extraire les appels à une API REST de petshop. Le petshop est une API très simple, et il a un ensemble de méthodes de base:
listProducts()
getProductDetails(ProductID)
addProduct(...)
removeProduct(ProductID)
Pour tester cela, nous devions soit créer un service factice, soit simuler les réponses. Mais cela semble exagéré; Je comprends que nous voulons nous assurer que nos méthodes ne cessent pas de fonctionner avec des erreurs typo / syntax, mais comme nous écrivons des fonctions qui appellent des méthodes distantes et que nous créons ensuite de fausses réponses à partir de ces méthodes distantes, il semble que un gaspillage d'effort et que nous testons quelque chose qui ne peut pas vraiment échouer. Pire encore, si la méthode distante change, nos tests unitaires échoueront en cas d'échec de la production.
Je suis presque sûr que je manque quelque chose, ou j'ai le mauvais bout du bâton, ou je ne vois pas le bois pour les arbres. Quelqu'un peut-il me mettre sur la bonne voie?