除了JMETER的另外一个性能测试工具:K6

什么是k6

K6性能压测工具诞生于2016年8月,当时它作为开源项目发布,并迅速在开发者和企业中流行开来。它的产生背景主要是为了解决当时在测试过程中遇到的一些问题,比如ab测试功能不足、jemeter不容易代码化等。

K6是用Go编写的,它可以轻松编写测试脚本,并且结合了JavaScript运行时,支持用户编写测试脚本的测试套件。它适用于各种应用程序和系统的性能测试需求,能够快速、准确地评估系统的性能和稳定性2。

在2021年6月,Grafana Labs收购了k6,而事实上,Grafana与k6的缘分还要追溯到更早的2年前。在进行Grafana 6.0的短期令牌刷新行为的压测时,Grafana Labs进行了一系列的技术选型,由于Grafana Labs的大部分后端软件是使用Go来实现的,恰巧k6满足OSS和Go需求,并且负载测试是使用JS编写(Grafana前端框架及UI都在使用),这使得k6自Grafana 6.0版本开始,不断地为Grafana开发者及测试者完成追踪bug的使命。

安装k6

Mac,推荐brew安装

brew install k6

Windows,推荐winget安装

Windows 10 1709 (build 16299),赶紧安装winget吧

winget install k6

当然,如果WIndows 7 也可以用chocolatey安装

choco install k6

也可以通过官网下载.msi文件安装:Installation

选择自己想要下载的版本(本教程中,我们参照 windows 安装指南,使用官方的提供的安装程序进行安装。直接下载安装包进行安装。)

出现以下表示安装成功

浏览器扩展 + Cloud

实际复杂的测试怎么办呢?也用不着自己写所有的脚本。而是通过浏览器插件结合云端的方式,自动生成绝大部分脚本。

1、安装浏览器扩展

1、可翻墙,直接访问k6 Chrome插件地址:

k6 Browser Recorder

2、不能翻墙的话,访问这个网址:

Chrome Extension CRX Downloader

3、输入k6浏览器扩展的ID:phjdhndljphphehjpgbmpocddnnmdbda,下载crx文件。

4、把下载好的文件拖进来

5、插件安装好,先不要尝试录制,因为插件需要结合云端,待会录制接口再使用就好了

2、Cloud,注册github账号

1、直接登录github账号,没有账号点击注册账号

2、复制API,命令行运行

k6 login cloud --token <YOUR_K6_CLOUD_API_TOKEN>

录制脚本

1、在k6的浏览器扩展这里点击 Start recording,在浏览器上进行操作,录制接口

2、点击Start recording之后,即可进行操作,让扩展知道你操作了什么,录制完成后点击Stop。

3、扩展自动打开了http://app.k6.io云端:

4、保存脚本

录制完成后需要查看脚本,有时会出现少录或无脚本的情况,可借助其他抓包工具或者浏览器自带网络监测做对比,完善脚本内容

设置用户并发量

options可以编辑模拟用户并发量的

下面设置就是:前1分钟,虚拟用户增长到20.然后持续3分30秒,虚拟用户维持在20个。然后1分钟内,虚拟用户减到0,完成测试。

运行

1、公网

如果是公网直接点击run test 就可以运行

2、局域网

这里我模仿一下局域网测试,这种情况多在政府或国企内网非常常见。

打开右上角的Script,然后COPY SCRIPT

复制到编辑器,保存为.js格式

命令行运行:k6 run 文件名.js

第一个红框,显示的是综合测试指标,平均响应时间、最小响应时间、最大响应时间,p90、p95等数据。

第二个红框,显示的是每次迭代测试测数据,比上面的数据都多了1秒。因为这是模拟用户使用习惯,也就是sleep(1),每次用户访问页面之后会停留(浏览页面)1秒。

  • 12
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值