I am writing unit test cases using Mockito and JUnit . But getting NullPointerException when running a test. On debugging I get to know that Mockito on method: when().thenReturn() is not returning a value for dependent methods and the calling program is calling those methods to get result.
Below is my dummy code to get idea of structure of code:
class B {
public C getValue() {
return C;
}
}
class A {
public D getAns(String q1, String q2) {
return B.getValue().map(mapper::toD); //null pointer exception start here
}
}
@RunWith(MockitoJunitrunner.test)
class TestA {
@InjectMock
A a;
@Mock
B b;
C c;
init() {
when(b.getValue()).thenReturn(c);
}
@Test
public void getA() {
D ans=A.getAns(q1,q2); //getting null pointer exception here
AssertNotNull(ans);
}
}
getValue()is a static method. If that isn't the case please add code that represents your case.