@SpringBootTest注解是SpringBoot自1.4.0版本開始引入的一個用於測試的注解。基本用法如下:
1、pom添加Maven依賴
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> </dependency>
2、如使用idea可以自動生成並跳轉到測試類,具體見:idea可以自動生成並跳轉
public class SlotBenefitServiceImplTest extends WwtmApplicationTests { @Resource private ISlotBenefitService slotBenefitService; @Test public void list() throws Exception { SlotDataDTO slotDataDTO = new SlotDataDTO(); slotDataDTO.setSlotId(10000L); slotDataDTO.setCreated("2018-10-26"); slotBenefitService.list(slotDataDTO); } }
此處WwtaApplicationTests 為主測試類,創建springboot項目自動生成的,這樣測試時啟動就和啟動項目一樣,WwtmApplicationTests 類如下:
@RunWith(SpringRunner.class)
@SpringBootTest(classes = WwtmApplication.class, webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
public class WwtmApplicationTests {
@Test
public void contextLoads() {
}
}
其中,classes屬性指定啟動類,SpringBootTest.WebEnvironment.RANDOM_PORT經常和測試類中@LocalServerPort一起在注入屬性時使用。會隨機生成一個端口號。