@SpringBootTest注解是SpringBoot自1.4.0版本开始引入的一个用于测试的注解。基本用法如下:
1、pom添加Maven依赖
org.springframework.boot spring-boot-starter-test
2、如使用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一起在注入属性时使用。会随机生成一个端口号。