本文使用版本:
spring boot 2.6.3
java 11
window 11
IntelliJ IDEA
Maven
一、MockMvc 整合測試
Spring Boot 提供的「MockMvc」元件。
它能針對當前專案模擬出發送 HTTP 請求的動作。
跟 Postman 很像。
建立HelloController 來測試
參考本文:
二、pom.xml 的 dependencies 加入 測試類啟動器
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
三、建立 HelloControllerTest
src\test\java\ (專案package)
四、程式內容
本文程式使用簡單寫法。
@RunWith(SpringRunner.class)
@SpringBootTest
public class HelloControllerTest {
private MockMvc mockMvc;
@Before
public void setup(){
mockMvc = MockMvcBuilders.standaloneSetup(new HelloController()).build();
}
@Test
public void testHello() throws Exception {
mockMvc.perform(MockMvcRequestBuilders.get("/test1")).andDo(print());
}
}
類別加上三個標記。
@RunWith 和 @SpringBootTest 是定義測試程式要在 Spring Boot 的環境下執行。
@AutoConfigureMockMvc 代表測試開始時會在元件容器中建立 MockMvc 元件
五、建立 HelloController 測試用的
@RestController
public class HelloController {
@RequestMapping(value = "/test1")
public String test1() {
System.out.println("HelloController -- Spring boot test");
return "Spring boot test";
}
}
六、執行測試結果
點選 HelloControllerTest -> 右鍵 -> Run HelloControllerTest
圖2
圖3 執行中
圖4 執行結果 ,如果打勾綠色的,就是執行成功
圖5 執行結果訊息 主要程式為這行 .andDo(print())
本專案下載:
用LINE傳送分享
其它文章





