lundi 19 août 2019

Mockito : « Stubbing » pré-programmés l'objet avec les attentes du système à tester.

Le stubbing permet de définir le comportement des objets mockés face aux appels de méthodes sur ces objets.

Plusieurs méthodes de stubbing sont possibles :
  1. Retour d’une valeur unique
Mockito.when(user.getLogin()).thenReturn(‘user1’); //la chaine de caractères user1 sera renvoyée quand la méthode getLogin() sera appelée.
  1. Faire appel à la méthode d’origine
Mockito.when(user.getLogin()).thenCallRealMethod();
  1. Levée d’exceptions
Mockito.when(user.getLogin()).thenThrow(new RuntimeException());
Il faut noter que la méthode retournera toujours la valeur stubbée, peu importe combien de fois elle est appelée . Si on stubb la même méthode ayant la même signature plusieurs fois, le dernier stubbing sera pris en compte.
Mockito.when(user.getLogin()).ThenThrow(new RuntimeException()).ThenReturn(« foo »);
Ici le premier appel va lever une exception, tous les appels qui suivront retourneront « foo ».
  1. Retours de valeurs consécutives
Mockito.when(user.getLogin()).thenReturn(‘user1’,’user2’,’user3’);
Le premier appel retourne user1, le deuxième retournera user2 le troisième user3. Tous les appels qui suivent retourneront la dernière valeur c’est à dire user3.
  1. Ne rien retourner
 Mockito.doNothing().when(user.getLogin());

Aucun commentaire:

Enregistrer un commentaire

to criticize, to improve