Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用会话创建HttpServletRequest_Java_Spring_Maven_Httpsession - Fatal编程技术网

Java 使用会话创建HttpServletRequest

Java 使用会话创建HttpServletRequest,java,spring,maven,httpsession,Java,Spring,Maven,Httpsession,我正在尝试覆盖我的spring应用程序,发现了一些问题。主要的任务是创建一个新的HttpServletRequest,并将会话设置为获取和设置属性(覆盖我代码的所有行)。这个测试将通过Maven抛出JUnit自动运行,然后我没有请求没有响应 我正在寻找这个,我发现了Mockito API,它为我们提供了一种创建HttpServletRequest对象的方法,但我无法为该对象设置会话: HttpServletRequest req = Mockito.mock(HttpServletRequest

我正在尝试覆盖我的spring应用程序,发现了一些问题。主要的任务是创建一个新的
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层。