Spring实战—1.8 测试基本的控制器
  kTaLlEiuFwW3 2023年11月02日 32 0
  •    如果审视一下HomeController。可能注意不到这些注解,看到的仅仅是一个简单的POJO 。我们都知道测试POJO是很容易的。<br />     
    
  •    因此,我们可以编写一个简单的类来测试HomeController,如下所示:<br />
    
  •   	 程序清单5.5    HomeControllerTest:测试HomeController
    

file

  根据您的描述,程序清单5.5中的测试是简单的,它只测试了home()方法的行为。测试直接调用home()方法,并断言返回的字符串包含"home"值。
第一点测试没有从Spring MVC控制器的角度测试,没有断言针对GET请求会调用home方法。
第二点没有判断 home是视图名称。
1.使用控制器的方式测试Spring MVC中的控制器,不仅仅作为POJO测试。
2.Spring提供一种模拟MVC执行HTTP请求的机制。
3.这样做不需要启动Web服务器和Web浏览器。

为了演示如何测试Spring MVC控制器,我们重写了HomeControllerTest,并使用了Spring MVC中的新测试特性。<br> 程序清单5.6展示了新的HomeControllerTest。<br /> 程序清单5.6 改进HomeControllerTest

file

  •   新版本的测试相比之前的版本只多了几行代码,但它更完整地测试了HomeController。这次测试不是直接调用home()方法并测试返回值,而是发起了对"/"的GET请求,并断言结果视图的名称为"home"。
    
  •   		首先,它使用HomeControllerMockMvcBuilders.standaloneSetup()创建一个MockMvc实例,并调用build()方法进行构建。然后,使用MockMvc实例执行针对"/"的GET请求,并设置期望得到的视图名称。
    

本文由博客一文多发平台 OpenWrite 发布!

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

推荐阅读
  2Vtxr3XfwhHq   2024年05月17日   55   0   0 Java
  Tnh5bgG19sRf   2024年05月20日   114   0   0 Java
  8s1LUHPryisj   2024年05月17日   49   0   0 Java
  aRSRdgycpgWt   2024年05月17日   47   0   0 Java
kTaLlEiuFwW3