问题标签 [spring-test-mvc]

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 投票
3 回答
6507 浏览

java - JMockit 未正确初始化

我正在使用junit 4.12, jmockit 1.19&spring-test 4.1.1.RELEASE来测试我的 Spring MVC Java 项目。

我的这些依赖项的顺序pom.xml

  • jmockit
  • junit
  • spring-test

服务层的测试用例工作正常。我只使用 spring-test 来测试控制器。在测试控制器时,我收到以下错误:

java.lang.IllegalStateException:JMockit 未正确初始化;请确保 jmockit 在运行时类路径中位于 junit 之前,或使用 @RunWith(JMockit.class)

对于服务层,我通过使用@RunWith(JMockit.class )测试类解决了这个错误。

但是对于控制器,我需要用@RunWith(SpringJUnit4ClassRunner.class ).

如何解决此错误?

注意:我jmockit之前junit输入过pom.xml

0 投票
2 回答
2360 浏览

java - 为什么我的 Spring Controller 的请求映射不能在模拟 WebApplicationContext 中工作?

我正在使用这里的 Spring 文档。我的目标是使用“webAppContextSetup”选项来测试我的 spring 配置以及我的控制器,但是我无法将控制器的方法映射到 TestDispatcherServlet 中。到目前为止,我有以下设置:

数据配置

MVC 配置

合同控制器.java

ContractControllerIT.java

目前我在运行测试时看到以下错误:

而且,有趣的是,失败前的一些看似矛盾的日志记录语句。

此外,这是我在 StackOverflow 上的第一个问题,因此欢迎和赞赏任何有关如何改进我的问题的建议。

0 投票
1 回答
5427 浏览

spring - 弹簧负载测试

我已经使用 spring (mock mvc) 实现了一个测试单元,并且我正在寻找一种工具来在许多线程/进程中运行这个单元(因此它将充当我的服务器的负载测试)。我见过像磨床和 jmeter 这样的应用程序,但我不想重写整个单元,而只是使用现有的。有任何想法吗?

0 投票
1 回答
6587 浏览

spring-boot - 如何使用 spring-test-mvc 打印请求正文

我正在使用 spring-test-mvc 来测试我的控制器,但是我找不到打印请求正文的方法,这非常不方便。

使用 MockMvcResultHandlers.print()

我找到了一些身体信息,但没有找到身体部位:

更新

看了一些源码后,似乎应该扩展 MockMvcResultHandlers 来添加一些打印项?

更新 概念证明代码:

0 投票
0 回答
293 浏览

spring-mvc - OutOfMemory 中的 Apache Camel 集成测试结果

我有一个简单的 Camel 路由,可以将数据发送到与 Spring MVC 集成的外部 REST 接口。

然后使用 mockMvc 对 rest 端点进行集成测试,以模拟外部 camel 端点。

如果你自己运行它,测试就会通过,但是一旦它与其他集成测试一起包含在构建中,它就会不断产生 OutOfMemory。MaxPermSize 是 4G,看起来这不是问题。我是骆驼的新手,所以我的猜测是我以错误的方式连接测试。将不胜感激任何建议。

0 投票
2 回答
2561 浏览

spring-mvc - Spring Security Test 和 MockMvc 向 REST 控制器提供 null 自定义 UserDetails 参数

我正在尝试编写一个集成测试来访问 REST 端点并获取特定经过身份验证的用户(我在测试中设置的用户)的数据。我最初尝试使用 进行设置mockMvc = webAppContextSetup(wac).apply(springSecurity()).build(),但使用BeanInstantiationException. 在使用自定义 UserDetails implementation 测试 Spring Security 和 MvcMock的帮助下,我能够通过切换我的 setUp 来克服这个问题。现在我已经将我的设置切换为使用standaloneSetup,我可以调用我的控制器了。但是,无论我做什么,我都无法将我在测试中创建的自定义 UserDetails 对象放入我的控制器中调用 MockMvc 结束的方法中。

我正在使用 Spring 4.2.2 和 Spring Security 4.0.1。

我的测试代码如下所示:

为了简洁起见,省略了其他一些不相关的配置。我真的不明白为什么我在测试中明确创建的自定义 UserDetails 对象没有传递到我的 REST 控制器中,而是一个空对象。我在这里做错了什么?有没有人有类似案例的工作示例?提前谢谢了。

0 投票
3 回答
5471 浏览

spring - 使用 MockMultipartFile 测试最大上传文件大小

我使用 Spring Boot 创建了一个文件上传服务,并使用 Spring Mock Mvc 和 MockMultipartFile 对其进行了测试。我想测试超过最大文件大小时是否引发错误。以下测试失败,因为它收到 200。

有没有可能测试上传文件的大小?

0 投票
0 回答
994 浏览

spring - 测试 Spring MVC:使用standaloneSetup() 时的空视图

我无法让 spring mvc 测试框架在standaloneSetup 配置中正确运行,它总是导致一个空视图。我在 spring boot v1.2.7 应用程序中使用 thymeleaf 作为视图技术。

它在完整的环境中运行良好:webAppContextSetup

这是我的设置方法

我尝试添加视图解析器但没有成功,它导致 NullPointerException 因为视图为空。

例外

考试:

该测试运行良好,仅当我取消注释测试响应内容的最后一行时它才会失败,因为视图为空

print 方法产生:

任何帮助深表感谢。

0 投票
1 回答
2090 浏览

java - 在 Spring Test Framework Controller 测试中为表单参数获取 null

我正在使用 Spring Test Framework 测试注册表单提交。我正在使用传递参数,param但参数断言失败,因为值出来为空。下面是代码

控制器:

控制器测试提交:

测试结果:

打印()输出:

0 投票
1 回答
863 浏览

spock - Spock 不适用于通过 @WebAppConfiguration 工作的预期“匹配调用”

我正在与

  • STS
  • 摇篮
  • 斯波克核心
  • 斯波克报告
  • 斯波克弹簧
  • Spring MVC 测试

我有以下测试代码:

代码工作正常。它通过了。

此外:感谢 andDo(print()) 通过 Gradle 测试报告,可以确认 personaXmlFindOneController.findOneRequestParamById 已被调用。

它的意思是

现在如果启用

代码失败,

观察到在 setup 方法中,已经通过

因此,缺少什么或出了什么问题?