Jat*_*ngh 12 http-headers rest-assured
我是新来的放心和Java,我正在尝试做一个非常基本的测试,检查响应是200 ok的API.请问您能告诉我在下面的脚本中需要更改什么才能传递多个标题ID,Key和ConId?
import org.junit.Test;
import com.jayway.restassured.*;
import com.jayway.restassured.http.ContentType;
import static org.hamcrest.Matchers.*;
import static com.jayway.restassured.RestAssured.*;
public class APIresponse
{
public static void main(String[] args)
{
APIresponse apiresponse = new APIresponse();
apiresponse.response();
}
@Test
public void response ()
{
baseURI="http://testme/api/";
given().
header("Id", "abc").
param("Key", "NuDVhdsfYmNkDLOZQ").
param("ConId", "xyz").
when().
get("/uk?Id=DT44FR100731").
then().
contentType(ContentType.JSON).
body("response.code", equalTo("200"));
}
}
Run Code Online (Sandbox Code Playgroud)
par*_*dak 13
添加多个标题的最简单方法是在.header(headername,headervalue)之后重复多次.given()
given().
header("Id", "abc").
header("name","name").
header("","")
...
Run Code Online (Sandbox Code Playgroud)
您可以在此github链接的测试套件中找到使用REST-Assured框架传递标头的不同方法.
编辑:
验证Rest-Assured中的响应状态:
expect().statusCode(200),log().ifError().given()......
Run Code Online (Sandbox Code Playgroud)
或者从这个github链接中选择一个如何测试响应头的示例
你还可以创建并添加多个头的地图对象,如下
Header h1= new Header("Accept", "*/*");
Header h2 = new Header("Accept-Language", "en-US");
Header h3 = new Header("User-Agent", "Mozilla/5.0");
List<Header> list = new ArrayList<Header>();
list.add(h1);
list.add(h2);
list.add(h3);
Headers header = new Headers(list);
request.headers(header);
Run Code Online (Sandbox Code Playgroud)