package com.haier.configure;
import com.alibaba.fastjson2.JSON;
import com.google.common.collect.Lists;
import com.haier.configure.dto.I18nKeywordMappingDTO;
import com.haier.configure.service.I18nKeywordService;
import com.haier.configure.vo.I18nKeywordMappingVO;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.mockito.Mockito;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.autoconfigure.web.servlet.AutoConfigureMockMvc;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.boot.test.mock.mockito.MockBean;
import org.springframework.http.HttpStatus;
import org.springframework.http.MediaType;
import org.springframework.mock.web.MockHttpServletResponse;
import org.springframework.test.web.servlet.MockMvc;
import org.springframework.test.web.servlet.request.MockMvcRequestBuilders;
/**
* @author A2001111
* @date 2024/9/19 15:15
*/
@AutoConfigureMockMvc
@SpringBootTest(classes = ServerApplication.class)
public class Test1 {
@Autowired
private MockMvc mockMvc;
@MockBean
private I18nKeywordService i18nKeywordService;
@BeforeEach
void setUp() {
// setup
I18nKeywordMappingVO i18nKeywordMappingVO = new I18nKeywordMappingVO();
i18nKeywordMappingVO.setServerTime(111L);
Mockito.when(i18nKeywordService.mapping(Mockito.any(I18nKeywordMappingDTO.class)))
.thenReturn(i18nKeywordMappingVO);
I18nKeywordMappingDTO dto1 = new I18nKeywordMappingDTO();
System.out.println("初始化完毕:"+i18nKeywordService.mapping(dto1));
}
@Test
public void test1() throws Exception {
// run the test
I18nKeywordMappingDTO dto = new I18nKeywordMappingDTO();
dto.setLanguageCodes(Lists.newArrayList("zh"));
MockHttpServletResponse mockHttpServletResponse = mockMvc.perform(MockMvcRequestBuilders.post("/gw/hwork/i18n/keyword/mapping")
.content(JSON.toJSONString(dto))
.contentType(MediaType.APPLICATION_JSON)
.accept(MediaType.APPLICATION_JSON))
.andReturn().getResponse();
// verify the results
System.out.println("返回结果:" + mockHttpServletResponse.getContentAsString());
System.out.println("返回status:" + mockHttpServletResponse.getStatus());
Assertions.assertEquals(HttpStatus.OK.value(), mockHttpServletResponse.getStatus());
}
}
springboot使用mock测试controller
于 2024-09-19 15:36:47 首次发布