使用mockmvc进行单元测试

使用mockmvc进行单元测试0906:

首先构建测试基类:

使用mockmvc进行单元测试_第1张图片

@WebAppConfiguration 

表明该类会使用web应用程序的默认根目录来载入ApplicationContext, 默认的更目录是"src/main/webapp", 如果需要更改这个更目录可以修改该注释的value值。

@RunWith(SpringJUnitClassRunner)

Spring集成Junit,正如JUnit的名称所暗示的一样,这是一种用于单元测试的框架。Spring中提供了一种专用的JUnit执行器,它能够在测试开始运行时启动Spring容器。这是在测试类中通过@RunWith标注进行配置的。

测试类需要继承AbstractJUnit4SpringContextTests 

@ContextConfiguration(location = ): 指定需要加载的spring配置文件的地址

@Before: 在每次Test方法之前运行的方法,以及初始化mockMvc。

 

mockMvc=MockMvcBuilders.webAppContextSetup( webApplicationContext ).build();

这行代码拿到mockMvc对象。 webApplicationContext通过注解自动注入。

接下来我们Mock出一个MockHttpServletRequestBuilder对象。用于模拟Http的get请求方式。

 

使用mockmvc进行单元测试_第2张图片

 

 

这里子类PaiApiTest继承了父类,BaseControllerMockMvcRequestBuilders.get(xxx);xxx表示返回的url

.andDo(print())是当请求执行完后,执行打印所有相关信息动作(显示到控制台)。print()是一个静态方法,来自MockMvcResultHandlers 

Mock测试大概可以分为以下几步

使用mockmvc进行单元测试_第3张图片

 

你可能感兴趣的:(Java,spring家族)