使用Rest Assured

时间:2018-04-06 04:56:08

标签: rest-assured

我是API测试新手。我正在使用Rest Assured自动化Rest API,并且在验证get请求时遇到了困惑。

API根据从搜索用户界面收到的搜索参数返回一组结果。网址为www.xxxxxx.com/index.php?option=xxxxxx&task=xxxxxx?key1=value1?key2=value2?key3=value3.............. URL中同样有大约20个参数。

BaseURI = "www.xxxxxx.com"
Response response = given().param("key1",value1).when ().get ("/index.php");

这是定义get URL的正确方法,还是应该包含所有传递的参数?

1 个答案:

答案 0 :(得分:0)

您可以创建请求和响应规范,并在所有API测试中使用它,因为这样您就不必重复常见的断言。你所拥有的是一个GET API,所以调用它与你给定的代码有些不同。请查看此示例代码

ResponseSpecBuilder builder = new ResponseSpecBuilder();
builder.expectStatusCode(200);
builder.expectContentType(ContentType.JSON);
responseSpecs = builder.build();
RequestSpecBuilder requestSpecBuilder = new RequestSpecBuilder();
requestSpecBuilder.setBaseUri("domainName");
requestSpecs = requestSpecBuilder.build();
given().spec(requestSpecs).
            when().get(endpoint + "?option=xxxxxx&task=xxxxxx").
            then().spec(responseSpecs).
            body("xyz", equalTo("value"));

在这个测试中,我们检查如果响应代码是200,内容类型是JSON,而在json响应中," xyz"元素具有价值"价值"。