与JUnit不同,Spring Boot本身没有提供与TestNG集成的基础设施。
那么如何利用Spring Boot的配置,执行一个TestNG测试用例呢?在Spring Boot提供的大量samples中,有一个spring-boot-sample-testng可供参考。
基于该sample中,我们的TestNG测试类如下:
@SpringBootTest(classes = { ClientLauncher.class }, webEnvironment = WebEnvironment.DEFINED_PORT)
@DirtiesContext(classMode = ClassMode.AFTER_CLASS)
public class TestHealthCheckTestNGClient extends AbstractTestNGSpringContextTests {
@Autowired
private HealthCheckClient healthCheckClient;
@Test
public void getHealthCheckIntegrationTest(){
ResponseEntity<List<Health>> healthCheckResponse = healthCheckClient.getHealthCheck();
assert HttpStatus.OK.equals(healthCheckResponse.getStatusCode());
}
}
注意,测试