RestAssured基础-入门01

最近想用java做点接口测试,偶然间发现了这个封装的框架,真的太好用啦

引用专栏:

   https://blog.csdn.net/qq_34400745/category_9368594.html

pom.xml文件中引入依赖

<!--        引用testng包 开始-->
        <dependency>
            <groupId>org.testng</groupId>
            <artifactId>testng</artifactId>
            <version>6.14.3</version>
            <scope>test</scope>
        </dependency>
<!--        引用testng包 结束-->
<!--        引用rest-assured包 开始-->
       
        <dependency>
            <groupId>com.jayway.restassured</groupId>
            <artifactId>rest-assured</artifactId>
            <version>2.8.0</version>
        </dependency>
<!--        引用rest-assured包 结束-->

静态引入包

import static com.jayway.restassured.RestAssured.*;     //RestAssured包
import static org.hamcrest.Matchers.equalTo;     //body里做断言用到的包
import static org.hamcrest.Matchers.hasXPath;    //body里做xpath断言用到的包

Demo-01

public class BDDTest {
    @Test(testName = "不带头和参数的请求",enabled = false)
    public void test(){
        given().
                get("http://basic-data-management.makenv.net/basic-data-management/basic/city/getProvinceAndArea").
        then().
                 statusCode(200).body("code",equalTo("200"));
    }

    @Test(testName="单个参数的请求",enabled = false)
    public void test1(){
        given().
                param("userId",2).
                when().
                get("https://jsonplaceholder.typicode.com/posts").
                then().
                statusCode(200).log().all();
    }

    @Test(testName = "多个参数的请求")
    public void test2(){
        Map<String,String> parameters=new HashMap<>();
        parameters.put("userId", "2");
        parameters.put("id", "14");
        given()
                .params(parameters)
        .when().log().all()
                .get("http://jsonplaceholder.typicode.com/posts")
        .then()
                .statusCode(200).log().all();
    }


    @Test(testName = "指定请求头")
    public void test3(){
        Map<String,String> parameters=new HashMap<>();
        parameters.put("userId", "2");
        parameters.put("id", "14");
        given()
                .header("accept-encoding", "gzip,deflate")
                .params(parameters)
                .when().log().all()
                .get("http://jsonplaceholder.typicode.com/posts")
                .then()
                .statusCode(200).log().all();
    }

    @Test(testName = "指定一组请求头")
    public void test4(){
        Map<String,String> headers=new HashMap<>();
        headers.put("accept-encoding", "gzip,deflate");
        headers.put("accept-language", "zh-CN");

        Map<String,String> parameters=new HashMap<>();
        parameters.put("userId", "2");
        parameters.put("id", "14");

        given()
                .headers(headers)
                .params(parameters)
                .when().log().all()
                .get("http://jsonplaceholder.typicode.com/posts")
                .then()
                .statusCode(200).log().all();
    }
}

Demo-02

public class BDDTest02 {
    @Test(testName = "响应内容是XML数据,断言编写",enabled = false)
    public void test01(){
        given()
                .get("http://www.thomas-bayer.com/sqlrest/CUSTOMER/10/")
        .then()
                .body("CUSTOMER.CITY",equalTo("Dallas"),"CUSTOMER.ID", equalTo("10"))
                .log().all();
    }
    @Test(testName = "多个验证点一行代码的写法",enabled = false)
    public void test02(){
        given()
                .get("http://www.thomas-bayer.com/sqlrest/CUSTOMER/10/")
        .then()
                .body("CUSTOMER.text()",equalTo("10SueFuller135 Upland Pl.Dallas")).log().all();
    }

    @Test(testName = "xpath表达式完成断言判断")
    public void test03(){
        given()
                .get("http://www.thomas-bayer.com/sqlrest/INVOICE/")
        .then()
                .body(hasXPath("/INVOICEList/INVOICE[text()='20']")).log().all();
    }

}

下次再战,还有一个小时快乐写用例

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值