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

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

详细介绍请看: https://cloud.tencent.com/developer/article/1012689

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

这次发布的算是一个大版本,主要增加一个重磅功能 - 压力测试:

压力测试

双11快到了,经常会有整点秒杀的活动,秒杀就是一个典型的压力场景,所以建了一个简单的Case来表现这种场景,来展示Hitchhiker压力测试功能:

Hitchhiker使用一个基于Golang的分布式压力节点,这是一个单独的项目:Hitchhiker-Node。得益于Golang的交叉编译,轻松跨平台生成文件,所以只有一个可执行文件和一个配置文件,没有环境依赖,直接执行。

使用时在release页面先选择对应平台的zip文件下载下来,解压后会有两个文件,一个可执行文件和一个配置文件config.json,打开配置文件,把Address的值从localhost改为部署Hitchhiker机器的ip,然后再执行Hitchhiker-Node文件,这样就弄好了一个压力点。

如果想压出很大的请求就可以考虑部署到多台机器上,Hitchhiker会自动根据机器的CPU核数来分配任务,当然,一般情况下直接部署到Hitchhiker同一台机器就够用了。

压力测试用的也是CollectionRequest,可以选择性的挑出合适的Request用来做Case,压力测试的参数有:

  • Repeat: 运行整套请求的次数
  • Concurrency: 并发个数
  • QPS: 1秒内限制单个节点请求的个数,默认为0,即没有限制
  • Timeout: 请求的超时时间设置,单位为秒,默认为0,即没有超时设置
  • Keeplive: 设置请求是否使用Keeplive

运行压力测试任务时会实时显示运行状态,包括节点的状态(闪烁表示正在工作),当前任务及任务的数量,下方有三个图表,分别表示

  1. 当前的运行进度,包括完成的数量及TPS
  2. 各个Request的请求消耗时间,包括 DNS, Connect, Request, Min, Max 这五个
  3. 请求失败的状态,包括 No Response, Server Error(500), Test失败 这三种情况

其他改动

  1. 源码部署时支持改端口,之前固定用的8080,要改需要改js文件,现在只需在部署文件时改就好了。
  2. 改正Schedule空跑时的异常。

后续计划

压力测试在国庆后总算做出来,后来又花了一些时间来测试,0.2这个版本算是告一段落。 接下来版本计划要改下,涉及新功能的都是大版本,bug是小版本。 下个模块功能是支持API文档,希望能是一个自定义的,所见即所得,支持导出常用格式的API文档系统。 小功能和bug会持续改进。

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

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏工科狗和生物喵

Dell-Windows10下装Ubuntu 16.04 双系统,Ubuntu引导开启-经验贴,满干货!

正文之前 历时一天半。各种折腾,各种修复引导。网络上大概翻了,二三十个教程。然后在windows下尝试修复引导。在ubuntu下试图修复引导。最后发现是自己模式...

7807
来自专栏玄魂工作室

python无线网络安全入门案例【翻译】

原文链接:http://www.devx.com/security/Article/34741 翻译:诸神的黄昏 整理校对:玄魂 可能有些术语翻译的不够...

3467
来自专栏前端架构

手工优化win10设置_中英文对比

  现在很多电脑都配置了大内存,一个显著问题是系统会在C盘内自动建立一个和内存体积相同的休眠文件(也就是说你的内存8GB,就会自动生成一个8GB的休眠文件)。问...

722
来自专栏Hadoop实操

Cloudera Manager监控介绍

Cloudera Manager提供了许多功能,用于监控集群组件(主机,服务)的运行状况和性能,以及集群上运行的作业的性能和资源情况。具体的包括以下项目:

8398
来自专栏杨建荣的学习笔记

MySQL Cloud Service体验小结

今天体验了下MySQL Cloud的一些服务,除了网络卡顿延迟比较大之外,其他的体验还可以,简单来说下这个过程。

962
来自专栏企鹅号快讯

Ubuntu更新内核和NVIDIA:修复Meltdown与Spectre漏洞

正如承诺的那样,Canonical刚刚发布了新内核和Nvidia更新,以解决所有受支持的Ubuntu Linux版本中的Meltdown和Spectre安全漏洞...

2276
来自专栏蓝天

Ubuntu系统微调

本章讲述了基本的基于命令行界面的系统配置方法。在学习本章前,你需要先阅读 Ubuntu 系统安装提示, 第 3 章.

773
来自专栏大数据架构师专家

nmap渗透测试--版本探测

所有参与活动获赠新书的童鞋,昨天书籍已经发出..只剩一本关于docker的,一直没有人认领,已经转为下期活动的奖品.再次呼吁大家,中奖后要立即联系我领奖,...

964
来自专栏魏艾斯博客www.vpsss.net

如何设置宝塔面板优化 php 服务器性能

为了提高 php 服务器性能,安装宝塔面板的服务器需要设置一下。整个设置过程很简单,魏艾斯博客把如何设置宝塔面板提高服务器性能的过程写下来,希望能帮到初次使用宝...

1144
来自专栏安恒信息

安全漏洞公告

WordPress '/wp-admin/options-discussion.php'脚本跨站请求伪造漏洞 WordPress '/wp-admin/opt...

2847

扫码关注云+社区