开源 API 集成测试工具 Hitchhiker v0.1.3 - 参数化请求
Hitchhiker 是一款开源的 Restful Api 集成测试工具,你可以轻松部署到本地,和你的team成员一起管理Api。
在线体验: http://www.hitchhiker-api.com/, 可以用 try without login
来免登录使用。
这次版本主要增加一个重磅功能 - 参数化请求:
参数化请求
什么是参数化请求,就是把一个Api里可变的点提取出来,参数化,这样就可以用一个Case覆盖到所有可变请求。
参考下图(比较大,可能会比较慢出来):parameters
就是用来构建参数化请求的,请求通常有很多参数,比如query string, body里的变化点等,这些参数可能会有不止一个值,每个都要覆盖的话需要写很多request。
举个例子:比如一个request有三个可变的参数A
, B
, C
,每个参数又分别有3个值,A的1,2,3
, B的4,5,6
, C的7,8,9
,这样随机组合下来会有3*3*3=27
个request:
147 148 148 157 158 159 167 168 169
247 248 248 257 258 259 267 268 269
347 348 348 357 358 359 367 368 369
很麻烦有没有,如果再多两个参数呢,轻松过百了呀,想想都头大,但其实它们之间只是一点不同,何必要费这么大劲呢,参数化请求可以帮你做这个事,只需要把可变的参数写在parameter里面,Hitchhiker会自动构建出所有request。
parameters
有两种组合方式,一种是所有组合Many to Many
,另一种是一对一组合One to One
,上面生个27个request的就是ManytoMany
,如果用一对一组合的话就只有3个,分别是:147, 258, 369
。
Parameters
的格式是一个json对象,对象的下一层是变量以及它的值:数组。看个例子:
{"A": [1, 2, 3],"B": [3, 4, 5], "C": [7, 8, 9]
}
使用的方式同变量一样,用{{}}
包起来。
下图就展示了参数化请求的使用方式,可变的三个参数name
, pwd
, age
。
name
有两个值:tom
和jerry
, pwd
有两个值:123
和456
,age
也是两个值:20
和18
,使用OnetoOne
时会生成两个请求:name:tom, pwd:123, age:20
和name:jerry, pwd:456, age:18
,一一对应的,可以分别请求,也可以一起请求。
如果选了ManytoMany
就会有8个请求,这里就不一一列举出来。
参数化请求的request保存后左边对应的item里会显示出请求的真正个数,如图中的8
。
参数化请求跑schedule一样没问题,会自动拆分开跑和显示。
大图:右键新标签打开图片
处理对比数据
Hitchhiker的一个重要功能就是可以对比不同环境的返回数据,之前是直接对比response,但实际上往往想要对比的是其中一部分或去掉可变部分,考虑一种情况,返回的response里带有一个当前时间,也就表示每次返回的数据都是不同的,因为时间肯定不一样,这样就影响了对比结果,但是这个时间没什么对比意义,所以我们需要在对比前把它去掉,这时可以用这个功能了。
具体用法:在test
里用js处理responseObj
,然后用$export$(data)
函数导出处理后的数据(data就是处理后的数据),然后跑schedule
时就会用导出的数据进行对比了。
默认Headers
之前有加一个header收藏功能,方便使用一些常用的header,但是有些server会校验一些请求头,比如Accept
,UserAgent
等,这个是每个请求都需要带的,每个request都写也有些麻烦,现在可以配置一些默认header,这些header可以在根目录下的appconfig.json里配置,默认定义的是这些:
"defaultHeaders": ["Accept:*/*","User-Agent:Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36","Cache-Control:no-cache"
]
可以根据需要自行修改。
后续计划
本来的计划是两周一版本,其中一周做小版本的新功能和改bug,另一周做大版本的压力测试。不过这次参数化请求比预想的要麻烦些,上面两周时间基本都花这上面了,压力测试这块就没进展,下两周除了改bug外就全力做压力测试这块,希望国庆过后能做到差不多。
Github: https://github.com/brookshi/Hitchhiker, 觉得不错的话麻烦 Star 支持下,谢谢。
开源 API 集成测试工具 Hitchhiker v0.1.3 - 参数化请求相关推荐
- 开源API测试工具 Hitchhiker v0.5更新 - 完善细节
Hitchhiker 是一款开源的支持多人协作的 Restful Api 测试工具,支持Schedule, 数据对比,压力测试,支持上传脚本定制请求,可以轻松部署到本地,和你的team成员一起管理Ap ...
- 开源API测试工具 Hitchhiker v0.10 - 中文版
Hitchhiker 是一款开源的支持多人协作的 Restful Api 测试工具,支持自动化测试, 数据对比,压力测试,支持脚本定制请求,可以轻松部署到本地,和你的team成员一起协作测试Api. ...
- 开源的 Restful Api 集成测试工具 Hitchhiker
Hitchhiker 是一款开源的 Restful Api 集成测试工具,你可以在轻松部署到本地,和你的team成员一起管理Api. 先上图看看: 简单介绍 背景是Team在开发一些Api,这些Api ...
- Centos7 搭建开源的Restful Api 集成测试工具 Hitchhiker
一般在公司的协同开发中,api是作为重中之中,除了有一个api的管理工具外,还会需要一个api的测试工具,用来模拟请求测试返回数据等,在api管理上,我们可以用rap或rap2,详细请参考<ce ...
- 强大的API测试工具Hitchhiker v0.9 基于UI的断言测试,回顾2017
v0.9是Hitchhiker在2017农历年的最后一个版本,而起点正是刚过完2016农历年,农历2018即将到来,一年轮回,今天写点东西稍微回顾下hitchhiker的2017. 先还是说v0.9, ...
- 一步一步以安装包的方式,搭建API测试工具Hitchhiker
首先要感谢Hitchhiker的作者BrookShi(https://github.com/brookshi/Hitchhiker)!感谢他分享这个非常棒的API测试平台.Hitchhiker 是一个 ...
- FREE 开源 API 管理工具等
最近学习API 管理工具,发现几个不错的东西,记录如下: 1.IBM 收购NODE 厂家 STRONGLOOP 有一产品LOOPBACK,开源,好! 2.apigee api管理平台 也不错. 3 ...
- 好用的开源 API 接口测试工具
一提到 API 接口测试的工具,对于有经验的程序员可能会想起的是 Postman. Jmeter.SoapUI,但众所周知,他们也会有一些缺点,导致他们在使用上体验不是特别好. 比如 Postman ...
- 开源 API 管理工具,新版本 V1.3.0:前后置脚本、查看所有....
这是我们的第 2 篇月报,以后我会在这里和每一位来之不易的开发者分享产品故事以及产品进展. 我们的 1.3.0 版本功能伴随着炎热的天气如火如荼地发布了,UI 进行了升级,更清爽.更简单. 看得出改了 ...
最新文章
- pycharm调试显示图片
- redis php 守护进程,PHP守护进程利用Redis队列实现业务
- 【数据库】关系型数据库优化操作
- 严重: StandardServer.await: create[8005]:
- 如何在 Microsoft Visual C# .NET 中实现 Microsoft Excel 自动化
- hadoop2.20+hive+sqoop+mysql数据处理案例
- linux安装icc步骤,怎麼安装不到 icc?
- html 星空效果,html5 canvas炫酷旋转银河系星空背景特效
- 海康工业相机的一些坑(USB接口的相机连上halcon17后,客户端无法打开相机,错误是无驱动,但是驱动是好好的,如何解决)
- sql server动态分页
- php oauth单点登陆,php单点登录
- 向视图中插入的数据能进入到基本表中去吗?_数据库调优,调的是什么及常见手法...
- SQLServer 2016报错Microsoft R Open 和 Microsoft R Server的解决方案
- 重量级ORM框架--持久化框架Hibernate【关系映射详解】
- 关于企业工业控制系统的网络安全保护设计方案
- 激光传感器构建栅格地图
- python中 glob.glob
- 神经结构搜索资料NAS
- 卡巴斯基网络安全解决方案-服务器虚拟化安全2.0安装方法,营销材料(内部)_卡巴斯基网络安全解决方案-虚拟化安全(KSV2.0)_V1.0.docx...
- 阿里云(香港节点瘫痪)复盘
热门文章
- TI AM5728 DSP+ARM+FPGA多核异构工业控制处理器
- uniapp 小程序 图片按自身大小显示,超出按等比例缩放
- Python数据可视化 Pyecharts 制作 WordCloud 词云图
- Antlr4入门(一)-下载安装与Hello示例
- admui3字体无法删除_2021-02-22
- APP内H5调试方法
- 数据质量管理系统有效清理垃圾数据
- BM24 二叉树的中序遍历
- android notifydatasetchanged 刷新错误,Android 调用notifyDataSetChanged方法失败解决办法
- 5G NR中的HARQ机制 CBG传输