星球狂想战队|REST-Assured,接口自动化的 "瑞士军刀"- 初识篇
REST-Assured 简介REST-Assured 是一套基于 Java 语言实现的开源 REST API 测试框架 , 由作者 Johan Haleby 开发并维护 , 目前该项目在 GitHub 上已收获 4.9K star
从官方描述可以看到 REST-Assured 使得通过 Java 语言测试 REST API 变得更加简单和容易
REST-Assured 除了语法简洁之外 , 强大的解析功能(支持 XML , JSON)也是其成为如今企业首选的接口自动化框架原因之一 。
REST-Assured 初体验
- 安装 JDK
- 安装 IDE , 推荐 Intellij IDEA
- 安装 Maven , 设置 Maven 镜像
引入 REST-Assured 依赖1.创建 Maven 工程
2.POM.xml 添加 REST-Assured 依赖坐标
3.创建 Java Class , 静态导入 REST-Assured 类路径(官方推荐使用 , 编写脚本时更加有效率)
4.第一个 get 请求
类似于行为驱动开发(Behaviour Driven Development-BDD)中的定义的结构 Given-When-Then 。
Given:在某场景下 , When:发生什么事件 , Then:产生了什么结果 。 而 REST-Assured 借鉴了这一套描述可以使得语法更加简洁:
- given 设置测试预设(包括请求头、请求参数、请求体、cookies 等等)
- when 所要执行的操作(GET/POST 请求)
- then 解析结果、断言
如果要输出响应的所有信息 , 使用 log().all()即可 。
param 参数设置我们会注意到上面这条 case 参数和 URL 是拼接在一起的 , REST-Assured 可以让每部分(URL , 参数 , 请求头)分开来 , 确保我们的代码有更好的可读性 , 在 given 中配置 queryParam 查询参数:
而且我们还能采用更加智能的方式:given 中指定 param , 此时 REST-Assured 将会自动根据 Http 方法决定参数类型(GET 方法将会自动使用查询参数 , POST 方法将会自动使用表单参数)
Cookies 设置如果想要在请求中携带 Cookies 信息 , REST-Assured 给我们提供了非常方便的方式:
或者是指定多对 cookie:
推荐阅读
- 大河客户端|布局战队,导师各有妙招,《2020中国好声音》收视率蝉联第一
- 周到|“好声音”蝉联省级卫视综艺节目收视第一,首迎抢位战导师布局战队各有妙招
- 游戏小怪兽|达仁星球:最新抖音直播留人控场方法和技巧
- 通天战队|A股最励志闻泰科技!给华为小米打工到半导体巨头,半年赚17亿
- |《街舞3》火舞台battle开启 钟汉良战队团魂之力势不可挡
- |《这!就是街舞》第三季火舞台热力喷发,队长领衔齐舞大秀燃炸战队之魂
- 生活狂想|极限男团新花名:任嘉伦可爱、贾乃亮浮夸、虞书欣的才叫脑洞大
- 时尚狂想曲|巴洛克风格衬衫搭配印花裙,杨紫挑战复古风,网友评价不一
- 时尚狂想曲|迪丽热巴入选亚洲最美面孔,抹胸衫配格纹裤,秀初秋风情
- 巅峰战队|ConcurrentHashMap的部分源码分析
