首页 > 解决方案 > 使用 mongodb 的 Spring Boot RestController 的 Junit

问题描述

我有restcontroller,它在内部使用mongodb来持久化数据,现在我想编写不应该使用实际数据库或后端mongoDB集合的junit测试用例。我想使用类似于 H2 的测试数据库。

我已经写了下面的代码,但不知道如何避免写入 mongo 我的原始数据库。

public class APiControllerTest extends AbstractTest {
   @Override
   @Before
   public void setUp() {
      super.setUp();
   }
   @Test
   public void AddUser throws Exception {
       User user =  new User();
       user.setName("junit");

      String inputJson = super.mapToJson(user);
      String uri = "/v1/createuser";
      MvcResult mvcResult = mvc.perform(MockMvcRequestBuilders.post(uri)
         .contentType(MediaType.APPLICATION_JSON_VALUE)
         .content(inputJson)).andReturn();

      int status = mvcResult.getResponse().getStatus();
      assertEquals(201, status);

   }
}  

标签: spring-bootjunitspring-restcontrollerjunit3

解决方案


推荐阅读