Tester les réponses non déterministes avec Mockito
Lorsque vous testez du code qui interagit avec des services non déterministes, il peut être difficile de garantir que les résultats restent constants, indépendamment de l’ordre de retour des méthodes. Par exemple, envisagez de tester le code suivant, qui utilise un ExecutorCompletionService pour regrouper et traiter les tâches :
ExecutorCompletionService completionService = new ExecutorCompletionService(service);
for (Callable t : ts)
completionService.submit(request);
for (int i = 0; i Pour relever ce défi, Mockito fournit un moyen de configurer les invocations ultérieures d'une méthode pour renvoyer différents objets. En utilisant la méthode thenReturn, vous pouvez spécifier les objets à renvoyer dans l'ordre :
when(method-call).thenReturn(value1, value2, value3);
Chaque valeur sera renvoyé séquentiellement, la dernière valeur étant utilisée à plusieurs reprises une fois que toutes les autres valeurs ont été épuisées. Cela vous permet de tester différents scénarios et de garantir que le résultat reste cohérent quel que soit l'ordre de retour.
Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3