问题标签 [spring-mvc-test]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 使用 MockMVC 测试 Spring MVC 路由器
我正在尝试使用 Spring 测试来测试我的 Spring MVC webapp。它使用springmvc-router进行路由,这似乎破坏了测试,当我使用@RequestMapping
而不是我的routes.conf
文件时,这些测试工作正常。
我有一个.jsp
名为 的文件valid.jsp
,当我从 Jetty 运行开发站点时,它显示正常。控制器是:
我的routes.conf
文件映射GET /valid authController.valid
.
现在,我的测试仪看起来像
运行时mockMvc.perform()
,会抛出 NullPointerException:
那么问题来了:Spring的测试框架可以和springmvc-router一起使用吗?
spring - 使用 mockito 对 spring mvc 控制器进行单元测试
我正在使用mockito和junit并针对spring mvc运行单元测试我的代码流是:
Service Layer
-> Model Layer
->Controller Layer
我使用代码成功地针对模型层测试了控制器:
但现在我正在寻找一种方法来测试 3 层结构。即针对控制器测试服务。我想出了:
并与
测试与上述相同,期望我已更改modelMock
为serviceMock
。由于某种原因,这个测试失败了。我得到 404。有什么想法吗?
version:
<spring.core.version>3.2.6.RELEASE</spring.core.version>
<spring.test.version>3.2.6.RELEASE</spring.test.version>
<mockito.version>1.9.5</mockito.version>
<junit.version>4.8.2</junit.version>
编辑:
spring - 在模拟中存根两个方法是使用 Mockito 和 Spring MockMVC 抛出异常
我正在尝试设置一些简单的 MVC 单元测试。我想要完成的是:
- 使用 Spring MockMVC 测试从我的控制器返回的 HTTP 状态和 HTTP 数据。
- 我的控制器具有对执行实际逻辑的外观的 Autowired 引用。
- 因此,我创建了一个测试类来测试一个控制器。
- 我想测试那个控制器的两个方法,所以我在我的测试类中创建了两个方法。
- 我已经模拟了我的外观并将其注入我的控制器中。
- 所以,我想用我正在测试的每个方法的返回来配置这个模拟。
我正在使用以下代码:
如果我尝试执行这个 Test 类,它会失败并出现错误:
如果我将每个模拟的方法行(Mock.when 行)移动到它的 test() 方法中,并分别调用这个测试方法,它们就可以工作。但是如果我尝试执行整个类,那么只有一个 test() 方法起作用,另一个抛出以下异常(这似乎与我上面的原因相同):
所以,我相信原因是我可能不太了解如何使用 Mockito。你能指出我正确的方向吗?
非常感谢!
java - 在 Junit 测试用例中处理 MethodArgumentNotValidException?
我正在使用 spring MVC 测试:在我的测试用例中,我传递了一个无效Bar
对象(年龄为零)。被MethodArgumentNotValidException
抛出,但它嵌套在NestedServletException
. 无论如何MethodArgumentNotValidException
通过现有/自定义从控制器抛出异常HandlerExceptionResolver
,以便我当前的测试用例checkHit2
通过?
控制器:
测试用例
酒吧
Junit输出
spring-mvc - 隔离控制器测试无法实例化可分页
我有一个 Spring MVC 控制器,它使用 Spring-Data 的分页支持:
我想使用漂亮的 Spring MVC 测试支持来测试 RequestMapping。为了使这些测试保持快速并与所有其他事情隔离开来,我不想创建完整的 ApplicationContext:
这种方法适用于其他不期望 Pageable 的控制器,但是通过这种方法,我得到了这些不错的长 Spring 堆栈跟踪之一。它抱怨无法实例化 Pageable:
问题:如何更改我的测试,以便神奇的 No-Request-Parameter-To-Pageable 转换正确发生?
注意:在实际应用中一切正常。
java - How to junit return type of a method in spring mvc controller
I am doing junit on my Spring MVC controller -
And below is my junit for the above method -
Above junit works fine..
But my question is how do I junit the return type of handleRequest
which is returning a HashMap
with key and value pair.. How do I verify that it is returning Hello World
? Is there any method to do that as well?
xpath - MockHttpServletResponse : 检查 xml 内容
我正在使用MockMvc
. 这是响应的样子:
该行的精美印刷版Body
:
通话MockMvc
看起来像
我很确定我误解了我应该如何在这里使用 XPath,但是为什么这个断言会失败?我的期望应该是什么样的?
java - Spring MVC 基于 Java 的配置看不到类路径属性文件
我正在尝试将我的网络应用程序从基于 XML 的配置迁移到基于 Java 的配置。我在“\src\main\resources\”目录下有属性文件。在 XML 配置中,我有这样的 bean:
它工作得很好。
现在我切换到 Java 配置,所以我有:
但不幸的是,我遇到了例外:
我尝试使用@PropertySource("classpath*:test.properties"),然后异常更改为:
引起:org.springframework.beans.factory.BeanDefinitionStoreException:加载bean类失败:blah.blah.blah.TestConfig;嵌套异常是 java.io.FileNotFoundException: 类路径资源 [classpath*:test.properties] 无法打开,因为它不存在...
前导斜线也无济于事......
我的测试课开始如下:
我究竟做错了什么?
spring - 通过上传一些文件来测试 Spring multipart/form-data 控制器
我正在尝试测试这个控制器:
Whit 这个模拟请求:
虽然,我想我写错了 MockMvcRequest 因为测试失败(返回的状态是 500)。
提前致谢。
java - Spring MockMvc - 自定义验证器未在 Spring 容器中注册/调用
我定义了我的测试类和配置类,如上所示。但是,没有调用具有 @Valid 注释的控制器方法。似乎它们在 Spring 容器初始化期间没有注册。
当我运行应用程序时,这些验证器注册得很好。
知道为什么我的控制器测试忽略了我的自定义验证器吗?