上篇介绍了两种方法得到不同类型的响应数据,其实还有一个方法,可以把响应对象装换成字节数组对象。第二个介绍extract().path()方法去摘取某一个字段的值,最后介绍我们实际接口用例开发中的写法是,先获取响应对象,然后根据响应对象提供的方法,去解析拿到响应正文,状态码和响应头字段等。
1.响应转换成字节数组
/**
* 以字节数组方式拿到响应对象
* @throws IOException
*/
@Test
public void testGetResponseAsByteArray() throws IOException {
byte[] bytes = get("https://reqres.in/api/users/2").asByteArray();
System.out.println("The Response: \n\n" + bytes.length);
//遍历这个字节数组看看
for (byte b : bytes) {
System.out.print(b + " ");
}
}
运行结果:
170
123 34 100 97 116 97 34 58 123 34 105 100 。。。这后面还有很多没写出来
2.使用path()和extract()方法摘取内容
场景浏览器打开 http://jsonplaceholder.typicode.com/photos/1
第一步通过相关方法摘取上面红圈这个url的内容,然后拿着这个url去进行发送get请求
/**
* 使用path方法提取内容
*/
@Test
public void testExtractDetailsUsingPath() {
String href =
when().
get("http://jsonplaceholder.typicode.com/photos/1").
then().
contentType(ContentType.JSON