javascript
junit 测试mvc_Spring MVC控制器JUnit测试
junit 測試mvc
JUnit測試Spring MVC控制器并非易事 。 但是最近,一個新項(xiàng)目 (即將在Spring推出)提供了新的工具來簡化此工作。 這篇文章說明了如何通過JUnit測試來測試一個簡單的控制器。該代碼是JUnit Testing Spring Service和DAO(帶有內(nèi)存數(shù)據(jù)庫)中使用的代碼的變體。 可以從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';}}
控制器測試
下面創(chuàng)建一個MockMvc實(shí)例來測試模擬的用戶請求:
@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'));}}/請求測試返回的狀態(tài)以及到JSP頁面的URL映射。 / roundtrip請求確保返回的模型確實(shí)包含Roundtrip屬性。
依存關(guān)系
Spring MVC測試工件尚無法從maven的中央存儲庫中獲得。 它應(yīng)該從另一個存儲庫獲得:
<repositories><repository><id>spring.test-mvc</id><url>http://repo.springsource.org/libs-milestone</url></repository></repositories>所需的依賴項(xiàng)是:
<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>更多春天相關(guān)的帖子在這里 。
參考: 技術(shù)說明博客上的JCG合作伙伴 Jerome Versrynge提供的Spring MVC Controller JUnit Testing 。
翻譯自: https://www.javacodegeeks.com/2012/10/spring-mvc-controller-junit-testing.html
junit 測試mvc
總結(jié)
以上是生活随笔為你收集整理的junit 测试mvc_Spring MVC控制器JUnit测试的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 在您的构建过程中添加微基准测试
- 下一篇: SpringOne Platform 2