介绍:K6是一款现代化的开源软件负载测试工具,它旨在帮助开发人员和测试人员快速有效地测试自己的网站和应用程序的负载能力。
K6的特点在于它具有强大的实时性能数据监控功能,而且使用简单,易于配置。在使用K6进行负载测试时,开发人员和测试人员可以很方便地模拟成千上万的用户同时访问目标网站,从而测试网站的负载能力、性能表现和稳定性。它被认为是目前最流行和最强大的开源负载测试工具之一。
什么是k6
使用 Go 编写的 k6 是一种高性能负载测试工具,并结合了 JavaScript 运行,可以轻松编写测试脚本,支持用户编写测试脚本的测试套件。弥补了 ab 测试功能不足,以及 jemeter 不容易代码化的问题。
它适用于各种应用程序和系统的性能测试需求,能够快速、准确地评估系统的性能和稳定性。
特点
-
简单易用:采用简洁的 JavaScript 脚本语法,编写和运行测试脚本简单、直观,无需编译和繁琐的配置,只需几行代码就可以开始测试活动。
-
高性能:使用 Go 语言编写,具有出色的性能和低资源消耗。
-
分布式测试:支持分布式测试,通过多个 k6 实例协同工作,能够模拟更大规模的负载
-
实时结果和报告:可以在测试运行过程中动态查看性能指标、响应时间、错误率等关键指标。同时还支持生成详细的 HTML 和 JSON 报告,方便结果分析和共享。
-
可扩展性强:具有丰富的插件和扩展选项,可以根据需要定制和扩展功能。
安装k6
K6需要使用包管理器安装,在 macOS 中,可以使用 Homebrew;在 Windows 操作系统中,可以使用 Chocolatey、winget 安装。
Linux:
-
sudo gpg -k
-
sudo gpg --no-default-keyring --keyring /usr/share/keyrings/k6-archive-keyring.gpg --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys C5AD17C747E3415A3642D57D77C6C491D6AC1D69
-
echo "deb [signed-by=/usr/share/keyrings/k6-archive-keyring.gpg] https://dl.k6.io/deb stable main" | sudo tee /etc/apt/sources.list.d/k6.list
-
sudo apt-get update
-
sudo apt-get install k6
MACOS
brew install k6
WINDOWS
-
choco install k6
-
或
-
winget install k6
本教程中,我们参照 windows 安装指南,使用官方的提供的安装程序进行安装。直接下载安装包进行安装。
下载链接地址: https://dl.k6.io/msi/k6-latest-amd64.msi
验证安装
在命令行中运行以下命令来验证 k6 是否成功安装:
k6 version
如果看到 k6 的版本信息,则表示安装成功。
小提示:
不管以何种方式进行安装,为了方便在任何位置使用 k6 命令,建议将 k6 的安装目录添加到系统的环境变量中。
这样,就可以在命令行中直接运行"k6"命令。
每一个测试脚本
以下是一个简单的"Hello World"测试脚本示例,模拟向 TesterHome 社区发送请求并打印出响应:
-
import http from 'k6/http';export default function () {
-
// 向目标网站发送GET请求
-
let response = http.get('https://testerhome.com/');
-
// 打印响应状态码和响应正文
-
console.log(`请求响应码 code: ${response.status}`);
-
console.log(`请求响应正文: ${response.body} `);}
在这个示例中,我们导入了 k6/http 模块。然后,定义了一个默认的测试函数,该函数在每个虚拟用户的迭代中执行。
在函数内部,我们使用 http.get() 发送了一个 GET 请求到"https://testerhome.com/response`变量中。接着,我们使用`console.log()`打印了响应的状态码和响应正文。",然后将响应存储在`
通过命令行运行测试脚本:
k6 run .\helloword.js
通过结果可以看到,返回了对应的请求响应码、请求响应正文
我们将在后续,继续推出介绍K6有关的系列文章,敬请期待!
总结:
感谢每一个认真阅读我文章的人!!!
作为一位过来人也是希望大家少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助。
软件测试面试文档
我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
视频文档获取方式:
这份文档和视频资料,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!以上均可以分享,点下方小卡片即可自行领取。