programing

Spring Boot 테스트에 게시할 JSON 개체 생성

padding 2023. 6. 27. 21:50
반응형

Spring Boot 테스트에 게시할 JSON 개체 생성

JSON payload로 /users URL에 POST 요청을 실행하여 사용자를 생성하는 기본 테스트를 작성하고 싶습니다.나는 새로운 객체를 JSON으로 변환하는 방법을 찾을 수 없으며, 지금까지 이 정도는 분명히 잘못되었지만 목적을 설명합니다.

@Test public void createUser() throws Exception {
    String userJson = new User("My new User", "myemail@gmail.com").toJson();
    this.mockMvc.perform(post("/users/").contentType(userJson)).andExpect(status().isCreated());

Jackson 개체 매퍼를 사용한 다음 사용자 writeValueAsString 메서드를 사용할 수 있습니다.

그렇게

@Autowired
ObjectMapper objectMapper;

// or ObjectMapper objectMapper = new ObjectMapper(); this with Spring Boot is useless


    @Test public void createUser() throws Exception {
        User user = new User("My new User", "myemail@gmail.com");
        this.mockMvc.perform(post("/users/")
                .contentType(MediaType.APPLICATION_JSON)
                .content(objectMapper.writeValueAsString(user)))
                .andExpect(status().isCreated());
    }

이것이 당신에게 도움이 되기를 바랍니다.

언급URL : https://stackoverflow.com/questions/35855208/create-a-json-object-to-post-in-spring-boot-tests

반응형