问题标签 [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.

0 投票
1 回答
26443 浏览

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一起使用吗?

0 投票
1 回答
17797 浏览

spring - 使用 mockito 对 spring mvc 控制器进行单元测试

我正在使用mockito和junit并针对spring mvc运行单元测试我的代码流是:

Service Layer-> Model Layer->Controller Layer

我使用代码成功地针对模型层测试了控制器:

但现在我正在寻找一种方法来测试 3 层结构。即针对控制器测试服务。我想出了:

并与

测试与上述相同,期望我已更改modelMockserviceMock。由于某种原因,这个测试失败了。我得到 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>

编辑

0 投票
1 回答
2170 浏览

spring - 在模拟中存根两个方法是使用 Mockito 和 Spring MockMVC 抛出异常

我正在尝试设置一些简单的 MVC 单元测试。我想要完成的是:

  • 使用 Spring MockMVC 测试从我的控制器返回的 HTTP 状态和 HTTP 数据。
  • 我的控制器具有对执行实际逻辑的外观的 Autowired 引用。
  • 因此,我创建了一个测试类来测试一个控制器。
  • 我想测试那个控制器的两个方法,所以我在我的测试类中创建了两个方法。
  • 我已经模拟了我的外观并将其注入我的控制器中。
  • 所以,我想用我正在测试的每个方法的返回来配置这个模拟。

我正在使用以下代码:

如果我尝试执行这个 Test 类,它会失败并出现错误:

如果我将每个模拟的方法行(Mock.when 行)移动到它的 test() 方法中,并分别调用这个测试方法,它们就可以工作。但是如果我尝试执行整个类,那么只有一个 test() 方法起作用,另一个抛出以下异常(这似乎与我上面的原因相同):

所以,我相信原因是我可能不太了解如何使用 Mockito。你能指出我正确的方向吗?

非常感谢!

0 投票
1 回答
7824 浏览

java - 在 Junit 测试用例中处理 MethodArgumentNotValidException?

我正在使用 spring MVC 测试:在我的测试用例中,我传递了一个无效Bar对象(年龄为零)。被MethodArgumentNotValidException抛出,但它嵌套在NestedServletException. 无论如何MethodArgumentNotValidException通过现有/自定义从控制器抛出异常HandlerExceptionResolver,以便我当前的测试用例checkHit2通过?

控制器:

测试用例

酒吧

Junit输出

0 投票
3 回答
18495 浏览

spring-mvc - 隔离控制器测试无法实例化可分页

我有一个 Spring MVC 控制器,它使用 Spring-Data 的分页支持:

我想使用漂亮的 Spring MVC 测试支持来测试 RequestMapping。为了使这些测试保持快速并与所有其他事情隔离开来,我不想创建完整的 ApplicationContext:

这种方法适用于其他不期望 Pageable 的控制器,但是通过这种方法,我得到了这些不错的长 Spring 堆栈跟踪之一。它抱怨无法实例化 Pageable:

问题:如何更改我的测试,以便神奇的 No-Request-Parameter-To-Pageable 转换正确发生?

注意:在实际应用中一切正常。

0 投票
1 回答
2501 浏览

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?

0 投票
2 回答
4328 浏览

xpath - MockHttpServletResponse : 检查 xml 内容

我正在使用MockMvc. 这是响应的样子:

该行的精美印刷版Body

通话MockMvc看起来像

我很确定我误解了我应该如何在这里使用 XPath,但是为什么这个断言会失败?我的期望应该是什么样的?

0 投票
1 回答
3160 浏览

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] 无法打开,因为它不存在...

前导斜线也无济于事......

我的测试课开始如下:

我究竟做错了什么?

0 投票
2 回答
5421 浏览

spring - 通过上传一些文件来测试 Spring multipart/form-data 控制器

我正在尝试测试这个控制器:

Whit 这个模拟请求:

虽然,我想我写错了 MockMvcRequest 因为测试失败(返回的状态是 500)。

提前致谢。

0 投票
1 回答
703 浏览

java - Spring MockMvc - 自定义验证器未在 Spring 容器中注册/调用

我定义了我的测试类和配置类,如上所示。但是,没有调用具有 @Valid 注释的控制器方法。似乎它们在 Spring 容器初始化期间没有注册。

当我运行应用程序时,这些验证器注册得很好。

知道为什么我的控制器测试忽略了我的自定义验证器吗?