IDEA的接口测试插件RestClient(HttpClient)好用吗?
- Idea版本
2020.1
一、IDEA的接口测试插件介绍
1.1 IDEA还有接口测试插件?
之前用过 Idea
的接口测试插件,我这个哈姆雷特觉得实在不好用,了解之后就任之去之了
今天另外一个部门的兄弟,过来让我看个接口,我不紧不慢的拿出了 泡斯特曼
测了起来,这个兄弟急眼了:“为什么不用 IDEA
的接口测试插件啊!窗口切换来切换去多麻烦啊,我就喜欢所有的东西都用 IDEA
去搞!”
心里不是滋味,懒得和他争论,接口测完了,我说了几个 泡斯特曼
的优点,恰好是 IDEA
的接口测试插件所不具有的,这个兄弟愣愣的回去了,好不好用只有自己知道啊!
真是秋风扫落叶,这个兄弟离去的背影让我想起了我和别人争论同一个问题最后悻悻离去的样子。。。
- IDEA的Rest Client介绍
依次点击Tools >> HTTP Client >> Test Restfule Web Service
,在IDEA
的底部会弹出Rest Client
的界面
1.2 Rest Client怎么用
- 发起第一个请求
按照图示,成功发起请求之后,在Scratches and Consoles
目录下的Scratches
目录下会生成rest-api.http
的文件,该文件会记录请求接口的语法等
- 查看
rest-api.http
文件
在该界面中有几个非常人性化的快捷按钮,如果不会操作,可以直接点击,是不是很方便
二、环境变量的设置和引用
2.1 设置环境变量
- 环境变量的分类
在IDEA
中,环境变量分为两种,类似Postman
的环境变量和全局变量
① Regular:全局变量
② Private:私有变量,只能在当前环境使用 - 设置
Private
环境变量
① 点击Add Environment File
,选择Private
类型的环境变量,注意此时生成的文件位置,有点坑
② 编辑环境变量文件
{
"test": {
"host": "http://10.20.46.181:8088/",
"operator_code": "huzh",
"password": "1"
},
"dev": {
"host": "http://10.20.26.61:8088/",
"operator_code": "admin",
"password": "admin@12345"
}
}
2.2引用环境变量
- 引用环境变量
在执行的时候会提示用哪个环境提示,这里因为环境配置问题,我们无法出现这个提示,执行还会出错
- 环境变量文件的正确放置位置
这是个坑!!!
- 发起请求时,选择不同的环境
三、Http语法简单介绍
- 示例http文件
### 登录操作员中心并获取token
POST {{host}}/g/hsxone.omc/v/submitLogin?time={{$timestamp}}
Accept: */*
Content-Type: application/json
{
"operator_code": "{{operator_code}}",
"password": "{{password}}"
}
> {% client.global.set("user_token", response.headers.Set-Cookie.token); %}
###获取角色的权限类表
POST {{host}}/hsrcm/hsrcm-pbs-server/v/getRolePrivileges?time={{$timestamp}}
Accept: */*
Content-Type: application/json
Cookie: token={{user_token}}
{ "role_id": "admin", "user_id":"dddd", "time_stamp":"1603327047772", "random_no":"456789", "nonce":"15670b076da4064c32e4508cd2aa8eb5" }
- 常用语法
① 接口与接口之间使用###
符号分隔
② 其他的语法照猫画虎就行,大部分与Postman设置的语法相同
四、RestClient的优缺点
- 优点
① 很装逼,能给人一种眼前一亮的感觉
② 不用额外开启Postman
等接口测试工具
③ 天生优雅的黑色界面,初恋的感觉 - 缺点
①Json
不能格式化,测起来真叫费劲,主要是写参数的时候不方便
② 接口不能分组管理,当接口过多的时候,能给你找懵逼
③ 响应数据展示真心难看,真心觉得专业的工具做专业的事情才是正确的