Hitchhiker 是一款开源的支持多人协作的 Restful Api 测试工具,支持Schedule, 数据对比,压力测试,支持上传脚本定制请求,可以轻松部署到本地,和你的team成员一起管理Api。

详细介绍请看: http://doc.hitchhiker-api.com/cn/introduction.html

在线体验: http://www.hitchhiker-api.com/, 可以用 try without login 来免登录使用 (在线演示不支持压力测试和上传js,虚拟机单核的,撑不住)。

下面来看看这次的更新:

request和setRequest

Script 增加属性request来得到请求的信息,包括 method, url, headers, body。

const req = hitchhiker.request;
const {url, headers, method, body} = req;

另外增加了一个方法 setRequest(request),这个方法是对请求进行修改。

request和setRequest配合着一起用就可以在请求发送前对其进行适当的编辑,比如增加一个签名,增加一个header之类。

const crypto = hitchhiker.require('crypto-js');

const sign = crypto.HmacSHA1('test', 'asdf');

const req = hitchhiker.request;
url = `${url}?sign=${sign}`;
hitchhiker.setRequest({...hitchhiker.request, url});

当然,做得过份点,把GET请求变成POST请求也不是不行:

let url = hitchhiker.request.url;

url = `${url.substr(0, url.lastIndexOf('/'))}/post?c=d`;

hitchhiker.setRequest({...hitchhiker.request, url, body: '{"name":"brook"}', method: 'POST'});

Common Pre Request Script

之前有个Pre Request Script,是Request级别的,但一个Collection下往往有很多Request有几乎相同的操作,如果每个Request去写将会非常麻烦,维护也不方便。

一个典型的应用场景是Collection下面所有的Request的url都需要在发送前加一个动态hash值,把这些通用的事情放到Collection 级别来做就会非常方便。

配置 inviteMemberDirectly

Hitchhiker 增加了一个新配置:inviteMemberDirectly, 用于决定邀请成员时是否需要发邮件,还是直接拉到Project里来,默认是true。

背景是有些公司的server是不能访问外网的,也就用不了Hitchhiker提供的邮件功能,这时这个直接拉同事到Project里来的功能就非常有用了。

当然,Hitchhiker是支持外部邮件接口的,其实如果愿意的话自己在内网搭一个邮件服务器也不麻烦。

具体这些配置可以参考:Configuration

Request Follow Redirect 和 Request Strict SSL

这两个都是Collection下面的属性。

Request Follow Redirect 用来设置这个Collection下面的请求是否在返回状态码为3xx时继续重定向到下一个页面,默认为false。

Request Strict SSL 用来设置这个Collection下面的请求在发送时是否需要做SSL证书的校验,因为有些公司用的自己做的证书,这些证书在严格SSL模式下会返回证书错误信息,不勾这个选项的话就会忽略这种错误,默认为false。

整理文档

把文档重新整理了一遍,使用gitbook来写和发布,不过gitbook貌似在国内经常被墙,所以在hitchhiker的网站上也放了一份,方便查阅。

文档地址:http://doc.hitchhiker-api.com/cn/introduction.html

画了一个Script流程图:

后续计划

接下来的一个主要目标是让压力测试支持ES6和支持js库,不过因为压力点是用GO写的,用的otto的解释器,而otto只支持到ES5,需要在server做下转换,另外还要支持async/await,可能会有点麻烦。

Github: https://github.com/brookshi/Hitchhiker, 觉得不错的话麻烦 Star 支持下,谢谢。

我的博客即将同步至腾讯云+社区,邀请大家一同入驻。

开源API测试工具 Hitchhiker v0.5更新 - 完善细节的更多相关文章

  1. 开源API测试工具 Hitchhiker v0.4更新 - 没有做不到,只有想不到

    Hitchhiker 是一款开源的 Restful Api 测试工具,支持Schedule, 数据对比,压力测试,支持上传脚本定制请求,可以轻松部署到本地,和你的team成员一起管理Api. 详细介绍 ...

  2. 开源API测试工具 Hitchhiker v0.6更新 - 改进压力测试

    Hitchhiker 是一款开源的支持多人协作的 Restful Api 测试工具,支持Schedule, 数据对比,压力测试,支持上传脚本定制请求,可以轻松部署到本地,和你的team成员一起协作测试 ...

  3. 开源API测试工具 Hitchhiker v0.7更新 - Schedule的对比diff

    Hitchhiker 是一款开源的支持多人协作的 Restful Api 测试工具,支持Schedule, 数据对比,压力测试,支持脚本定制请求,可以轻松部署到本地,和你的team成员一起协作测试Ap ...

  4. 开源API测试工具 Hitchhiker v0.8 - 自动化测试结果统计

    Hitchhiker 是一款开源的支持多人协作的 Restful Api 测试工具,支持自动化测试, 数据对比,压力测试,支持脚本定制请求,可以轻松部署到本地,和你的team成员一起协作测试Api. ...

  5. 开源API测试工具 Hitchhiker v0.10 - 中文版

    Hitchhiker 是一款开源的支持多人协作的 Restful Api 测试工具,支持自动化测试, 数据对比,压力测试,支持脚本定制请求,可以轻松部署到本地,和你的team成员一起协作测试Api. ...

  6. 开源API集成测试工具 Hitchhiker v0.2更新 - 压力测试

    Hitchhiker 是一款开源的 Restful Api 集成测试工具,支持Schedule, 数据对比,压力测试,可以轻松部署到本地,和你的team成员一起管理Api. 详细介绍请看: http: ...

  7. 开源API集成测试工具 Hitchhiker v0.3更新 - 自动同步

    Hitchhiker 是一款开源的 Restful Api 集成测试工具,支持Schedule, 数据对比,压力测试,可以轻松部署到本地,和你的team成员一起管理Api. 详细介绍请看: http: ...

  8. 强大的API测试工具Hitchhiker v0.9 基于UI的断言测试,回顾2017

    v0.9是Hitchhiker在2017农历年的最后一个版本,而起点正是刚过完2016农历年,农历2018即将到来,一年轮回,今天写点东西稍微回顾下hitchhiker的2017. 先还是说v0.9, ...

  9. 开源API集成测试工具 Hitchhiker v0.1.3 - 参数化请求

    Hitchhiker 是一款开源的 Restful Api 集成测试工具,你可以轻松部署到本地,和你的team成员一起管理Api. 详细介绍请看: http://www.cnblogs.com/bro ...

随机推荐

  1. C# 判断文件编码

    我们的项目中会包含有很多文件,但是可能我们没有注意到的,我们的文件的编码不一定是utf-8,所以可能在别人电脑运行时出现乱码.最近在做一个项目,这个项目可以把我们的文件夹里的所有文本,判断他们是什么编 ...

  2. win10 uwp 随着数字变化颜色控件

    我朋友在做一个控件,是显示异常,那么异常多就变为颜色,大概就是下面的图,很简单 首先是一个Ellipse,然后把他的颜色绑定到Int,需要一个转换,UWP的转换和WPF差不多,因为我现在还不会转换,就 ...

  3. php中常用的字符串格式化函数

    ltrim():从字符串左删除空格或其他预定义字符串 rtrim():从字符串的末端开始删除空白字符串或其它预定义字符 trim():从字符串的两端删除空白字符和其他预定字符 str_pad():把字 ...

  4. 2年Java开发工作经验面试总结

    最近换了个公司,从三月底开始面,面到四月底,面了有快二十家公司.我是一个喜欢总结经验的人,每经过一场面试,我在回来的路上都会仔细回想今天哪些问题可以答的更好,或者哪些问题是自己之前没遇到过的,或者是哪 ...

  5. SpringMVC + Spring + Mybatis+ Redis +shiro以及MyBatis学习

    SpringMVC + Spring + Mybatis+ Redis +shiro http://www.sojson.com/shiro MyBatis简介与配置MyBatis+Spring+My ...

  6. 关于tarjan算法的空间优化

    最近随着对tarjan算法理解的加深,我发现用另外一种途径实现tarjan的方法,且可以省去DFN数组,大大节省了空间.经过大量测试,已经无误.以下将分阶段阐述进行优化的过程. 第一阶段 下面来说一下 ...

  7. PhiloGL学习(4)——三维对象、加载皮肤

    前言 上一篇文章中介绍了如何响应鼠标和键盘事件,本文介绍如何加载三维对象并实现给三维对象添加一个漂亮的皮肤. 一. 原理分析 我对三维的理解为:所谓三维对象无非是多个二维对象拼接到一起,贴图就更简单了 ...

  8. rewrite写法

    RewriteRule ^/android-special-(\d+).html$ /special/index.php?c=index&a=specialDetail&speid=$ ...

  9. Lua 5.3 协程简单示例

    Lua 5.3 协程简单示例 来源 http://blog.csdn.net/vermilliontear/article/details/50547852 生产者->过滤器->消费者 模 ...

  10. D3.js从入门到“放弃”指南

    前言 近期略有点诸事不顺,趁略有闲余之时,玩起D3.js.之前实际项目中主要是用各种chart如hightchart.echarts等,这些图形库玩起来貌都是完美的,一切皆可配置,但几年前接触了D3之 ...