mockMvc的url详解

我今天跟踪看了一下Spring的mockMvc源码

我发现它只用到了如 http://127.0.0.1:8080/payment/pay.html  中的/payment/pay.html

写http://127.0.0.1:8080/payment/pay.html还是http://www.baidu.com/payment/pay.html还是直接/payment/pay.html都是一样的



所以只配置如private static final String URL = " /payment/pay.html";就可以了
无论前面配置什么,最终都会到TestDispatcherServlet(继承DispatcherServlet,SpringMVC的中心控制器)
TestDispatcherServlet好像是根据@ContextConfiguration("classpath:spring-config.xml")自动创建的
然后TestDispatcherServlet根据path(/payment/pay.html)跳转到相应的Controller
跟前面配置的http://IP:port没有关系。(无论前面写啥,测的都是根据test/resources下spring-config.xml配置出来的东西)


mockMvc和模拟请求不一样,
如果是模拟http请求(如httpClient)
可以根据http://IP:port去模拟请求
mockMvc不可以

你可能感兴趣的:(java,单元测试)