本文共 1760 字,大约阅读时间需要 5 分钟。
这篇主要来学习我们这个系列第3篇阅读RestAssured.java中代码中提到的baseURI和basePath。
1.场景
首先我们学习过HTTP协议,我们已经知道什么是URI。我们先来看一个接口测试场景。
浏览器打开
我要测试上面四个红圈内的接口,其中四个接口都是从/posts, 这个路径就是我们的basePath,baseURI就是
2.baseURI和basePath代码举例
直接来看代码吧
package demo;import static io.restassured.RestAssured.*;import org.testng.annotations.BeforeClass;import org.testng.annotations.Test;import io.restassured.RestAssured;public class BaseUrlPath { @BeforeClass public void setup() { RestAssured.baseURI = "http://jsonplaceholder.typicode.com"; RestAssured.port = 80; RestAssured.basePath = "/posts"; } /** * 在BeforeClass中提前设置好了basePath 和baseURI * 这里只需要填写end points就行 */ @Test public void test1() { given().get("/1").then().statusCode(200).log().all(); } @Test public void test2() { given().get("/1/comments").then().statusCode(200).log().body(); } @Test public void test3() { given().get("?userId=1").then().statusCode(200).log().headers(); }}
上面在BeforeClass中,我们提前设置好了baseURI和basePath, 还有端口号,前面一篇我们还在奇怪为什么默认是8080端口,如果这里你不指定端口是80,RestAssured默认这个port=8080.
下面三个测试用例,这样写的用例就相等简洁一些,而且在BeforeClass中的port basePath baseURI,其实我们都可以提取到配置文件,这一点在接下来我们框架式设计中要利用到。
3.其他设置
除了上面basePath, baseURI和port,在Rest Assured还有一些其他的设置选项,可以提取指定。
3.1 基本认证(登录认证)
RestAssured.authentication = basic("username", "password");
3.2 过滤器
这个了解一下,在servlet中,我学习过过滤器Filter的基本使用,主要就是拦截的,这里了解一下就好。
//RestAssured.filters() = // 一个list对象
3.3 RequestSpecification 和ResponseSpecification
这个我们前面一篇学习过
//RestAssured.requestSpecification = 默认requestspecification//RestAssured.responseSpecification = 默认responseSepecification
3.4 默认解析器和url是否编码
RestAssured.urlEncodingEnabled = true;RestAssured.defaultParser = Parser.JSON;
3.5 reset方法
RestAssured.reset();
使用这个方法之后,上面设置都恢复成默认设置,basePath默认是空,port默认是8080,baseURI默认是localhost,这个reset()方法在框架有些地方是可以使用的。
转载地址:http://cnows.baihongyu.com/