Java 使用会话创建HttpServletRequest
我正在尝试覆盖我的spring应用程序,发现了一些问题。主要的任务是创建一个新的Java 使用会话创建HttpServletRequest,java,spring,maven,httpsession,Java,Spring,Maven,Httpsession,我正在尝试覆盖我的spring应用程序,发现了一些问题。主要的任务是创建一个新的HttpServletRequest,并将会话设置为获取和设置属性(覆盖我代码的所有行)。这个测试将通过Maven抛出JUnit自动运行,然后我没有请求没有响应 我正在寻找这个,我发现了Mockito API,它为我们提供了一种创建HttpServletRequest对象的方法,但我无法为该对象设置会话: HttpServletRequest req = Mockito.mock(HttpServletRequest
HttpServletRequest
,并将会话设置为获取和设置属性(覆盖我代码的所有行)。这个测试将通过Maven抛出JUnit自动运行,然后我没有请求没有响应
我正在寻找这个,我发现了Mockito API,它为我们提供了一种创建HttpServletRequest
对象的方法,但我无法为该对象设置会话:
HttpServletRequest req = Mockito.mock(HttpServletRequest.class);
有人能帮我吗?好的,我解决了。@M.Denium的评论是正确的,但请注意春季版。在第一次尝试时,我导入了
spring mock
库的MockHttpServletRequest
,得到了NoSuchMethodError
。这是关于Spring版本的,SpringMock
用于Spring1和Spring2。对于Spring 3或Spring 4,使用Spring测试库
,它将工作。好的,我解决了它。@M.Denium的评论是正确的,但请注意春季版。在第一次尝试时,我导入了spring mock
库的MockHttpServletRequest
,得到了NoSuchMethodError
。这是关于Spring版本的,SpringMock
用于Spring1和Spring2。对于Spring 3或Spring 4,使用Spring测试库
,它将起作用。如果使用Spring,请使用MockHttpServletRequest
,这比使用Mockito模拟所有内容更容易。或者更好地使用SpringMockMVC支持来编写测试。谢谢。我还要指出,被测试的业务逻辑不应该依赖于任何servlet规范工件;充其量,您需要模拟请求的唯一原因是测试调用业务逻辑的编组逻辑。一旦你这样做了,你可能会发现集成测试更适合web层。如果你使用Spring,使用MockHttpServletRequest
,这比尝试用Mockito模拟一切更容易。或者更好地使用SpringMockMVC支持来编写测试。谢谢。我还要指出,被测试的业务逻辑不应该依赖于任何servlet规范工件;充其量,您需要模拟请求的唯一原因是测试调用业务逻辑的编组逻辑。一旦完成了,您可能会发现集成测试更适合web层。