【发布时间】:2020-03-04 19:14:21
【问题描述】:
在我的服务类中,我有 @Autowired HttpServletRequest 并在我的服务方法中使用相同的对象,但对于该服务方法测试类,我无法在我的测试方法中模拟 HttpServletRequest 对象,请检查以下代码。我收到请求对象的空指针异常
@Component("someServiceClass")
public class SomeServiceClassImpl implements SomeServiceClass {
@Autowired
private HttpServletRequest request;
@Autowired
private HttpServletResponse response;
@Override
public void method(String id) {
String param = request.getParameter("param");
// Here i am getting request object as null
}
}
public class SomeServiceClassImplTest {
@Mock
private HttpServletRequest request;
@Mock
private HttpServletResponse response;
@InjectMocks
private SomeServiceClassImpl someServiceClass;
@Before
public void setup() {
MockitoAnnotations.initMocks(this);
}
@Test
public void methodTest() {
Mockito.when(request.getParameter(Mockito.any())).thenReturn("dm");
}
}
【问题讨论】:
-
以上代码工作正常。它的
@InjectMocks不是@InjectMock
标签: spring-boot junit mockito