欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 前端技术 > javascript >内容正文

javascript

Spring MVC控制器JUnit测试

发布时间:2023/12/3 javascript 51 豆豆
生活随笔 收集整理的这篇文章主要介绍了 Spring MVC控制器JUnit测试 小编觉得挺不错的,现在分享给大家,帮大家做个参考.
JUnit测试Spring MVC控制器并非易事 。 但是最近,一个新项目 (即将在Spring推出)提供了新工具来简化此工作。 这篇文章说明了如何通过JUnit测试来测试一个简单的控制器。

该代码是JUnit Testing Spring Service和DAO(带有内存数据库)中使用的代码的变体。 可从Spring-MVC-JUnit-Testing目录中的Gihut获得。

测试配置类

这些与Service和DAO测试所需的相同。

控制者

我们的控制器:

@Controller public class MyController {@Autowiredprivate MyService myService;@RequestMapping(value = '/')public String home(Model model) {return 'index';}@RequestMapping(value = '/roundtrip')public String persistenceStatus(Model model) {MilliTimeItem retr = myService.createAndRetrieve();model.addAttribute('RoundTrip', retr);return 'roundtrip';}}


控制器测试

下面创建一个MockMvc实例来测试模拟的用户请求:

@RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration(classes={ JpaTestConfig.class, TestConfig.class }) public class MyControllerTest {private MockMvc mockMvc;@Beforepublic void setup() {mockMvc = MockMvcBuilders.annotationConfigSetup(JpaTestConfig.class, TestConfig.class).build();}@Testpublic void testHome() throws Exception {mockMvc.perform(get('/')).andExpect(status().isOk()).andExpect(forwardedUrl('WEB-INF/pages/index.jsp'));}@Testpublic void testPersistenceStatus() throws Exception {mockMvc.perform(get('/roundtrip')).andExpect(status().isOk()).andExpect(forwardedUrl('WEB-INF/pages/roundtrip.jsp')).andExpect(model().attributeExists('RoundTrip'));}}

/请求测试返回的状态以及到JSP页面的URL映射。 / roundtrip请求确保返回的模型确实包含Roundtrip属性。

依存关系

Spring MVC测试工件尚无法从maven的中央存储库中获得。 它应该从另一个存储库获得:

<repositories><repository><id>spring.test-mvc</id><url>http://repo.springsource.org/libs-milestone</url></repository></repositories>

所需的依赖项是:

<dependency><groupId>org.springframework</groupId><artifactId>spring-test-mvc</artifactId><version>1.0.0.M1</version><scope>test</scope> </dependency> <dependency><groupId>org.hamcrest</groupId><artifactId>hamcrest-library</artifactId><version>1.3</version><scope>test</scope> </dependency>

更多春天相关的帖子在这里 。

参考: 技术说明博客上的JCG合作伙伴 Jerome Versrynge提供的Spring MVC Controller JUnit Testing 。


翻译自: https://www.javacodegeeks.com/2012/10/spring-mvc-controller-junit-testing.html

总结

以上是生活随笔为你收集整理的Spring MVC控制器JUnit测试的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。