实践RestTemplate

Spring 3提供的一个同步HTTP客户端,支持RESTful,默认使用JDK作为底层连接支持,也可以使用Netty、Apache HttpComponent和OkHttp等HTTP库

TestRestTemplate

Spring Boot Test 1.4.0新增,用于支持集成测试,配合@SpringBootTest则会自动创建并注入。

1
2
3
4
5
6
7
8
@RestController
public class HelloController {

    @GetMapping("/hello")
    public String hello() {
        return "Hello, World!";
    }
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
@RunWith(SpringRunner.class)
@SpringBootTest(classes = {ReadingListApplication.class}, webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
public class DemoApplicationTests {

    @Autowired
    private TestRestTemplate testRestTemplate;

    @Test
    public void testController() {
        String content = testRestTemplate.getForObject("/hello", String.class);
        // 使用断言测试,使用正确的断言
        Assert.assertEquals("Hello, World!", content);
    }
}