视频讲解

点击下方链接,观看 讲解视频

https://www.bilibili.com/video/av60089015/

动机

目前市场上对API接口做性能测试工具有 Jmeter、LoadRunner、AB、Locust等。

白月黑羽用过之后,觉得它们各有优点和不足,总体不是很满意。

所以 决定 自己开发一款免费的性能测试工具,希望集上面这些工具的优点,提供给大家使用。并且根据大家的反馈 不断的改进。

大家有问题可以到白月黑羽官方网站 http://www.python3.vip 反馈。

于是就有了 这款 HyLoad,中文名叫 黑羽压测

特点

黑羽压测 这款工具,立足 简单易用 和 性能强 两个特性。

  • 简单易用

    点击就可以产生 测试代码模板,修修改改 就能进行测试

  • 性能强

    单机可达 每秒 一万个请求,并发连接数可达 数万

下载地址

百度网盘:

下载链接

提取码:f4br

安装过程

安装非常简单,双击安装程序,就会自行安装了。

安装好以后,黑羽压测 会自行启动。

黑羽压测 需要 监听获取性能统计数据,所以初次启动,Windows会有防火墙提示选择允许即可。

快速开始

HyLoad做性能测试通常分为如下几步:

第1步 创建项目

HyLoad 的界面如下图所示

这个界面 就是让用户选择或者创建项目的。

HyLoad 项目 就是一个目录,里面包含了性能测试的定义文件。

点击 界面 新建项目按钮,在弹出界面 输入 项目的 目录名, 并且为项目选择上级路径。比如,下图所示

点击确定,上方就会出现当前的项目路径,如下所示

第2步 定义单个客户端行为

点击左边菜单栏 这里,

定义单个客户端行为。

性能测试是 模拟 大量的客户端大批量的发送请求消息 给 被测的服务器。

那么,其中每个 客户端的行为 是怎样的? 需要我们先定义好。

单个客户端行为定义好 以后, 我们在第3步只要指定产生 多少个 这样的客户端就可以了。

首先,我们点击这里,添加一个客户端的行为定义。

这样会创建一个名为 act-1 的客户端的行为定义文件。

客户端的行为定义 其实就是一段 Python代码。

不会写Python代码的小朋友们,不用害怕,我们的工具会帮你自动产生代码哦。

点击右边的这些栏目,就会产生 对应的代码。

大家可以按照上面的箭头所示,依次从上到下,点击3个条目,就会产生如下所示的代码

# 创建客户端
client = HttpClient('127.0.0.1', # 目标地址:端口timeout=10    # 超时时间,单位秒
                       ) # 发送 GET 请求
response = client.sendAndRecv('GET',        # 请求方法 GET/POST/PUT/DELETE等"/api/path1"  # 请求URL
    )print(f"消息体字符串为 {response.string('utf8')} ") 

显然,这是创建 客户端、发送请求给服务器、获取服务器响应消息体内容(如果是json格式的话)。

注意,点击右边条目的时候,代码会插入在当前光标处,所以务必注意光标在编辑窗口中的位置。

我们以新浪的股票接口为例,它的API 服务 url是 http://hq.sinajs.cn/list=sh601006

最后list的值是股票代码。

那么我们只要简单修改一下上面自动生成的代码,如下所示,注意注释的解释

# 目标地址改为新浪服务器地址
client = HttpClient('hq.sinajs.cn', timeout=10) response = client.sendAndRecv('GET',        "/list=sh601006"  # 请求URL修改
    )# 由于服务端返回的json格式数据是gbk编码
# 所以改为gbk
print(f"消息体字符串为 {response.string('gbk')} ") 

这就是 客户端行为定义, 做好了以后,点击 右上方的运行按钮,就会先执行一下单个用户的测试。

工具会打开终端窗口,运行该代码, 结果如下

当然,我们做性能测试,一个客户端,通常也是要反复地发送消息,这时,可以选择循环发送请求,

然后,修改一下代码,变成下面这样

client = HttpClient('hq.sinajs.cn', timeout=10) while True:response = client.sendAndRecv('GET',"/list=sh601006", # 修改urlduration=1 # 接收到响应后等待,确保本操作耗时1秒)

 

这样的修改,就是要求这个客户端每隔一秒钟,发送一个 HTTP请求 给被测的服务器。

第3步 定义性能测试场景

单个客户端定义好了, 要做性能测试,只要点击左侧菜单栏这里,定义性能测试场景

]

同样,点击下图处,添加一个性能场景定义。

然后,点击这里,插入 创建10个客户端 的示例代码

如下所示

# 定义性能场景,点击右边条目,可自动插入功能代码

createClient('act-1', # 客户端名称10,      # 启动客户端数量0.1      # 每隔多少秒,启动一个客户端)

当然,你可以自行修改客户端的数量。

这里,如果就是10个客户端,每个客户端每秒发送一个请求,10个客户端就是每秒10个请求。

随后,点击右上角运行按钮,就会打开一个窗口,按照我们的定义,运行该 性能测试了。如下

监控统计

点击左边菜单栏的 监控统计 图标,可以查看本次性能测试的实时监控,如下所示

如果你想结束本次性能测试,只需要关闭 运行性能测试的命令行窗口即可。

等整个性能测试结束,通常你需要产生这次性能测试的 统计图表,包括如下数据的图表

  • rps , 每秒发送请求数

  • tps , 每秒接收响应数

  • eps, 每秒错误响应数

  • tops, 每秒超时请求个数

  • avgresptime, 每秒平均响应时长

这些统计数据, 都保存在项目的目录中的数据文件里面。

只需要点击 数据文件统计按钮,然后选择刚刚产生的数据文件(文件名就是当前日期时间),如下所示

]

这样,就会产生统计图,如下所示

你可以点击上图箭头处,将统计图最终存为图片,方便放到测试报告中。

转载于:https://www.cnblogs.com/baiyueheiyu/p/11222005.html

黑羽压测 比 jmeter、locust、loadrunner 更简便,性能更强相关推荐

  1. 黑羽压测 一款新性能测试工具

    黑羽压测 性能测试工具新星 视频讲解 动机 特点 下载地址 安装过程 快速开始 第1步 创建项目 第2步 定义单个客户端行为 第3步 定义性能测试场景 监控统计 文本转自:白月黑羽教Python 视频 ...

  2. python接口压测1000并发_测试工具:黑羽压测

    前言 很多朋友对性能测试有种深深的误解:认为 只要学会 使用一款 性能测试工具,点点界面,配配数据,就能做好性能测试了. 不是这样的!! 性能测试 通常 要真正做好 很不容易. 它需要测试人员: 有产 ...

  3. 黑羽压测 做 API接口功能测试

    做功能测试 黑羽压测 是一款性能测试工具,但是我们也可以使用它,很方便的做 API接口功能测试 . 点击下方链接,观看 讲解视频 https://www.bilibili.com/video/av60 ...

  4. 压测接口线程数设置_ZAT掌门性能压测巡检系统实战和落地

    项目背景 随着业务拓展,对于接口性能的要求也在上升,各部门也开始针对部分慢接口进行优化,从测试角度针对这些优化需求进行测试时不仅要保证对应接口的功能正常使用同时也要验证接口优化成果.在日常的开发工作中 ...

  5. python locust 能压测数据库_python locust 性能测试:HOOKS钩子方法

    为locust中不同类型的事件,提供的钩子方法: from locust import TaskSet, task, events, Locust from locust.clients import ...

  6. 压测工具之Locust

    前言   说起压测,我就用过Jmeter,而且仅是简单使用,好用性能强大,最近接触了一个python提供的压测框架Locust,翻译为蝗虫,蝗虫过之,寸草不生,哈哈哈,我感觉很贴切. 首先,我们分析一 ...

  7. jmeter constant timer 如何添加_阿里巴巴在开源压测工具 JMeter 上的实践和优化

    Apache JMeter 是 Apache 旗下的开源压测工具,创建于 1999 年初,迄今已有超过 20 年历史.JMeter 功能丰富,社区(用户群体)庞大,是主流开源压测工具之一. 性能测试通 ...

  8. 性能测试 性能测试实战(八)Jmeter性能测试平台开发,性能测试平台架构解析 ,性能测试平台搭建 分布式性能压测平台 Jmeter分布式性能测试管理平台 性能测试平台示例案例 《完结篇》

    文章目录 一.前言 二.Jmeter分布式性能测试平台 介绍 1.Jmter分布式性能测试平台 简介 2.Jmeter分布式性能测试平台 优秀案例1 3.Jmeter分布式性能测试平台 优秀案例2 4 ...

  9. MeterSphere在开源压测工具JMeter上的分布式优化和实践

    Apache JMeter是一款100%纯Java的开源软件,旨在加载测试功能行为和测量性能.它可以用来测试静态和动态资源的性能,例如静态文件.Java Servlet.CGI Scripts.Jav ...

最新文章

  1. [程序员创造力训练 1] 猜单词 - 关于健康
  2. 使用Python中的Turtle库绘制简单的图形
  3. iOS new 和 alloc的区别
  4. tableau应用实战案例(四十八)-以可视化的形式打开目标跟踪
  5. c中嵌入Python,提供灵活性
  6. Python 深浅copy 和文件操作
  7. std::string::assign 崩溃的问题
  8. matlab设计声音听听
  9. @程序员,让8年京东架构师为你解析云原生监控和日志解决方案!
  10. sql怎么把小数变百分比_Excel怎么自动算出百分比?
  11. linux 播放器系统,Linux 中的十大开源视频播放器
  12. 高质量C/C++编程指南
  13. centos6.6搭建LANP环境(yum)
  14. 读书笔记(十五)--将才
  15. 【CSS】美化网页元素+盒子模型
  16. 几种 Proximity Graphs 的单调性分析
  17. 冷冰:Android核心分析系列
  18. 利用Python进行数据分析——数据导入导出
  19. mui12搭载鸿蒙,MUI系统最新资讯
  20. word文档的数据损坏如何进行修复

热门文章

  1. hadoop之旅8-centerOS7 : Hive的基本操作
  2. 使用 JavaScript 实现 SHA256 以及 HMAC-SHA256
  3. 目标网站怎么样才能收集尽可能详细信息
  4. 自动售货机软件工程课设_软件工程_自动售货机
  5. 利用python爬取百度翻译内容
  6. 当当网畅销书排行爬虫(requests+BeautifulSoup)
  7. IOS 内购IAP 自动订阅收据验证返回结构体
  8. 微信好友性别分布与签名分析词云图
  9. OpenCV学习三:Mat类详解
  10. maven package后 Idea项目中找不到target文件