mockito stubbing retourne null
Je suis à l'aide de mockito comme se moquant de cadre. J'ai un scenerio ici, mon quand(abc.méthode()).thenReturn(valeur) ne retourne pas de valeur, au lieu de cela, elle renvoie null.
Ici est de savoir comment les élèves de ma classe et de test ressemble.
public class foo(){
public boolean method(String userName) throws Exception {
ClassA request = new ClassA();
request.setAbc(userName);
ClassB response = new ClassB();
try {
response = stub.callingmethod(request);
} catch (Exception e) {
}
boolean returnVal = response.isXXX();
return returnVal;
}
Maintenant suivant est le test
@Test
public void testmethod() throws Exception{
//arrange
String userName = "UserName";
ClassA request = new ClassA();
ClassB response = new ClassB();
response.setXXX(true);
when(stub.callingmethod(request)).thenReturn(response);
//act
boolean result = fooinstance.lockLogin(userName);
//assert
assertTrue(result);
}
stub est moqué à l'aide de mockito je.e à l'aide de @Mock. Le test jette NullPointerException dans la classe foo près boolean retrunVal = réponse.isXXX();
OriginalL'auteur Ritesh | 2011-06-01
Vous devez vous connecter pour publier un commentaire.
l'argument matcher pour stub.callingmethod(demande).thenReturn(réponse) est en comparant par référence à l'égalité. Vous voulez un plus lâche matcher, comme ça je pense:
OriginalL'auteur Kevin
De s'assurer que votre
ClassA
met en œuvre ses propresequals
et qu'il est correctement mis en œuvre.Je suis d'accord. Toutefois, si ClassA est de sa propre classe, il doit être correctement mis en œuvre. Avec cela dit, je voudrais choisir votre réponse sur la mienne 🙂
OriginalL'auteur Jordan S. Jones