我是一个新手学习带有 portlet 的 spring mvc。我有一个返回视图的控制器。我不确定如何编写该控制器的单元测试。
@controller
@RequestMapping("VIEW")
public class HelloController {
@ResourceMapping(value = "hello")
public String helloWorld(RenderRequest request) {
return "hello";
}
我的单元测试控制器是这样的
public class HelloWorldControllerTest extends TestCase {
protected void setUp() throws Exception {
super.setUp();
}
protected void tearDown() throws Exception {
super.tearDown();
}
public void testHelloWorldController() throws IOException {
MockRenderRequest request = new MockRenderRequest();
HelloController c = new HelloController ();
ModelAndView result = c.helloWorld(request);
assertNotNull("ModelAndView should not be null", result);
assertEquals("hello", result.getViewName());
}
这不起作用,因为结果不是 ModelAndView 对象,而是控制器中的字符串。返回类型可以是主控制器中的 ModelAndView 对象,但如果使用基于 spring 注释,那么从示例中我发现返回类型是 String。任何人都可以建议哪个是最佳做法,或者我是否理解错误。
提前致谢