一、基本介绍
Quick Request作为IntelliJ IDEA的插件,提供给开发人员更好的调试体验,当前可支持Spring Mvc、Dubbo框架的所有请求,具有简单易用、自动生成请求参数、项目环境管理、历史请求记录、保存请求及快速搜索的特点,下面给大家仔细介绍一波,让大家更好的去了解并使用它。
二、下载安装
IntelliJ IDEA插件市场搜索Quick Request即可
目前版本支持为:2021.1+(基本上只要不是太旧的idea版本都可以用)
三、项目及环境配置
- 添加项目(Project) 如:Test
- 添加环境(Env) 如:dev
- 环境/项目下,将当前项目环境的请求前缀输入即可
- 确定之后即可在主页面选择项目及环境,这时url默认会增加刚刚输入的前缀(可点击complete是否显示完整的url)
四、测试请求
- 可以直接请求的方法左边有个火箭图标,直接点击图标即可自动生成请求url、参数
- 再点击send按钮即可发送请求
- 响应分为四个tab,Json:按JSON格式展示 Pretty:美化过后的结果 Raw:未被处理的响应结果 info:响应的一些参数例举
五、历史记录
- 每一次的成功请求都会在APIs->History中看到请求记录,包含请求方法、Url及请求时间
- Operation列包含两个按钮
- 第一个按钮为定位,点击可跳转到具体的请求方法,并且会将请求参数带到主页面,可以修改后请求
- 第二个按钮为定位+请求,在上面的基础上会直接重新发送请求
六、保存请求
- 在四的基础之上,点击保存按钮即可将当前请求的url、参数保存为一条记录
- APIs->Saved中可查询到树形结构的请求,Operation操作和历史记录中操作一样
七、Navigate
- 第一次进入此页面,需要先点击刷新按钮,因为默认不会加载(接口多加载慢)
- 左侧可以根据模块、请求方法进行过滤请求,也可以根据url和方法名过滤
- 如果项目中新加了请求方法,需要刷新才可显示
八、其他配置
-
数据类型映射配置
- 字符串生成配置,可选择策略,长度及分隔符,不做过多介绍
- 自定义类型映射:需要全限定名+默认值
- 忽略类型映射:用于过滤一些不需要为其生成默认值的类型,如HttpServletRequest等等
- 默认类型映射:提供基本数据类型的默认值设置
-
其他配置
-
ConnectionTimeOut、ReadTimeOut是请求的超时时间,默认30s
-
Url替换:设置之后可自动帮您替换成您设置的值
-
生成url配置:点击小火箭是否生成并直接请求,默认不勾(需要手动点击send按钮)
九、根据url搜索方法
有此功能,即可不需要安装其他类似插件了,嘿嘿~(支持Dubbo、Spring Mvc等)
十、填写表单生成Spring Mvc方法
支持自动补全的都是需要手动选择具体某一个类的,不然它哪知道你要用啥类型0.0,是不是贼简单
十一、支持JMH压测
寻思了很久【压测这个功能到底要不要搞】,对于一般程序员来说,其实好像没必要,因为大部分就业务开发,测试有专门的测试去弄,但是呢,我想了想还是弄一个,因为你可以在开发完后,对于某些大查询心里没底的,做一下这种自测是有利于你提前发现问题的。结果呢,试过Jmeter,确实可以集成进来,但是感觉又太重了,比如包体积太大,直接给我干到几十M,功能多而杂,对于开发来说只要知道个大概qps就行,因此Jmeter被我最终pass了(当然以后会不会重新拾起,咱们交给时间-,-)。一次偶然的机会(其实是问ChatGPT的,嘿嘿)让我接触到了JMH,说是用于代码微基准测试的工具套件,然后我看了看,主要是帮助做性能调优的(比较下LinkedList和ArrayList插入数据的效率等等这种),其实对它用于restful请求也未尝不可,因为他也提供了吞吐量模式,而且包也不大就几M吧,所以最终把它集成进来了。
其他配置里面新增【压测配置】,提供基础参数的设置
- ConnectionTimeout:压测的连接超时时间,单位:秒
- ReadTimeout:压测的读取超时时间,单位:秒
- WriteTimeout: 压测的写入超时时间,单位:秒
- Threads:压测的并发线程数
- Test times:压测次数,即执行几次
压测完后,会在Response->Chart下展示个吞吐量的图表
- 横坐标为压测的第n次,图上一共压了5次
- 纵坐标为压测的吞吐量(单位:opts/s,中文:每秒执行了多少个请求)
- Avg虚线代表吞吐量的一个平均值,仅供参考
- 最下方如果有错误数,就可以点击详情查看具体的错误(包含错误的信息和发生的次数)