REST Assured 1 - REST Assured 介绍

REST Assured 系列汇总 之 REST Assured 1 - REST Assured 介绍

REST Assured是什么?

REST-assured是一个开源的Java 库,用来测试和验证REST APIs。动态语言如Groovy,Ruby执行API测试非常有益和简单,而对Java来说就有点费力了。但REST Assured使得用Java语言测试API跟使用Ruby和Groovy一样简单。

REST Assured 是一种JAVA DSL(Domain Specific Language)领域特定语言 [ 通常被定义为一种特别针对某类特殊问题的计算机语言,它不打算解决其领域外的问题。],用来简化测试REST Services,它简化HTTP Builder顶层。REST Assured支持发起任意HTTP请求POST, GET, PUT, DELETE, OPTIONS, PATCH和HEAD, 包括详述清单,比如:参数,头部,cookie和实体。它可以用来验证这些请求的响应。

REST Assured基于Apache Http Client(提供高效的、最新的、功能丰富的支持 HTTP 协议的客户端编程工具包,并且它支持 HTTP 协议最新的版本和建议)之上,那为啥不直接用HTTP Client呢?下面的截图可以给出答案。

REST Assured 由Johan Haleby开发和维护. 他于2010年工作于Jayway开始启动项目,现在由Parkster赞助。

REST Assured的版本

当你在Maven Central Repo搜索Rest Assured依赖是,你会发现有两个不同的group ids。初学者可能会有疑惑,我们还是用最新的那个版本。

com.jayway.restassured – 这个是停产的

io.rest-assured – 这个是最新的

REST Assured的优点

  1. 开源,免费
  2. 相比Http Client,REST Assured所需代码量更少
  3. 发起一个HTTP 请求,前期准备步骤更简单直接
  4. 更容易解析响应中的JSON或XML
  5. 提取字段和断言更简单利用内置的hamcrest Matchers
  6. 自2.0版本后,支持BDD 关键字如given(), when(), then() 使得代码可读,干净
  7. 丰富的语法
  8. 非常丰富的现成的断言
  9. 快速的断言状态码和响应时间
  10. 运行中验证Headers, cookies, Content-Type等
  11. 强大的日志机制
  12. 非常容易集成其它java类库,如TestNG,Junit作为测试框架和其它扩展的Report插件
  13. 支持不同的身份验证机制
  14. 可以集成Selenium-Java实现端到端的UI automation
  15. 内置支持JsonPath和XmlPath用来解析响应中的JSON,XML格式消息。
  16. 可以用来验证JSON Schema利用JSON Schema Validation库
  17. 也包括 XML schema 验证
  18. 可以集成Maven和CICD
  19. REST Assured 4.1.2 支持 Java 13.
  20. 支持 multi-part 形式数据
  21. 支持Spring Mock Mvc, Spring Web Test Client, Scala and Kotlin.

REST Assured的缺点

  1. 不显示支持测试SOAP APIs
  2. 需要java编程能力
  3. 没有内置的reporting,BDD是一个比较好的选择 

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值