如何编写针对Restful API的测试用例

 时间:2024-10-15 02:04:39

1、首先需要引入spring-boot-starter-test,会帮我们把测试框架引入进来。<dependency> &造婷用痃lt;groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope></dependency>

如何编写针对Restful API的测试用例

2、首先我们创建一个测试类UserControllerTest,然后加上@RunWith(SpringRunner.class和@SpringBootTest的注解。接下来我们通过@Autowiredprivate WebApplicationContext wac来伪造web环境。

如何编写针对Restful API的测试用例

3、然后使用@Before注解来初始化mockMvc,@Before注解会在每个测试用例调用之前执行。@Beforepublic void setup() { mockMvc = MockMvcBuilders.webAppContextSetup(wac).build();}

如何编写针对Restful API的测试用例

4、接下来我们写一个查询请求的测试方法,在该方法上添加@Test注解,使用MockMvcRequestBuilders.g髫潋啜缅et()去模拟一个Get请求,MediaType.APPLICATION_JSON_UTF8指定媒体类型,MockMvcResultMatchers.status().isOk()表示结果,如下所示。@Testpublic void testQuery() throws Exception { // 模拟一个Get请求 mockMvc.perform(MockMvcRequestBuilders.get("/user") // 媒体类型 .contentType(MediaType.APPLICATION_JSON_UTF8)) // 对请求结果的期望 .andExpect(MockMvcResultMatchers.status().isOk()) // 期望返回的是一个集合,集合的长度是3 .andExpect(MockMvcResultMatchers .jsonPath("$.length()") .value(3));}

如何编写针对Restful API的测试用例

5、我们执行该单元测试,但是测试没有通过,原因是因为我们期望的返回码是200,但是实际返回的是404,是因为我们还没有编写一个/user的请求。

如何编写针对Restful API的测试用例

6、新增一个/user请求的类,返回值为null如下图所示,执行单元测试后虽然不报404的错误了,但是测试依旧不通过,因为期望的返回值不能是null,因此我们在编写代码的时候还要给一个确切的返回值,我们返回有三个对象的list,可以看到通过了单元测试。

如何编写针对Restful API的测试用例如何编写针对Restful API的测试用例

7、如果想在单元测试中添加参数,使用.param()进行参数传递,相应的方法中使用@RequestParam注解传递参数。

如何编写针对Restful API的测试用例如何编写针对Restful API的测试用例

8、如果想添加分页参数到单元测试中,我们在方法中使用Pageable去接收参数,使用@PageableDefault()注解给分页添加默认值。

如何编写针对Restful API的测试用例如何编写针对Restful API的测试用例
  • 如何处理PERT2型管材焊接过程出现的虚焊问题
  • 2021年元旦高速免费吗
  • 汽车湿式制动器的正确使用方法
  • 战国手游攻略最强阵容
  • 将神地宫探宝攻略 地宫探宝玩法技巧详解
  • 热门搜索
    绿色循环圈外传攻略 第五人格攻略 卫衣搭配什么裤子 大连攻略 贵州旅游自由行攻略 怎么让头发浓密 暗黑破坏神3攻略 焗油膏怎么用 夏洛特怎么获得 科学减肥