什么是 k6

k6 是一种高性能负载测试工具,使用 Go 编写,的 k6 是一种高性能负载测试工具,并结合了 JavaScript 运行时,可以轻松编写测试脚本,支持用户编写测试脚本的测试套件。弥补了 ab 测试功能不足,以及 jemeter 不容易代码化的问题。
适用于各种应用程序和系统的性能测试需求,能够快速、准确地评估系统的性能和稳定性

特点

安装 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

通过结果可以看到,返回了对应的请求响应码、请求响应正文


↙↙↙阅读原文可查看相关链接,并与作者交流