k6负载测试服务器

一个基于Model Context Protocol框架的k6负载测试服务器实现,提供简单易用的API和可配置的测试选项。

  • by QAInsights
  • Python
  • 本地部署
  • 26 星标
  • 更新于
在 GitHub 查看 QAInsights/k6-mcp-server

使用说明

🚀 ⚡️ k6-mcp服务器

用于运行k6负载测试的模型上下文协议(MCP)服务器实现。

✨ 特性

  • 与模型上下文协议框架简单集成
  • 支持自定义测试持续时间和虚拟用户(VU)
  • 易于使用的API用于运行k6负载测试
  • 可通过环境变量进行配置
  • 实时测试执行输出

🔧 先决条件

在开始之前,请确保已安装以下内容:

📦 安装

  1. 克隆存储库:
git clone https://github.com/qainsights/k6-mcp-server.git
  1. 安装所需的依赖项:
uv pip install -r requirements.txt
  1. 设置环境变量(可选): 创建一个 .env 项目根目录中的文件:
K6_BIN=/path/to/k6  # Optional: defaults to 'k6' in system PATH

🚀 入门指南

  1. 创建k6测试脚本(例如。, test.js):
import http from "k6/http";
import { sleep } from "k6";

export default function () {
  http.get("http://test.k6.io");
  sleep(1);
}
  1. 在您最喜欢的MCP客户端(Claude Desktop、Cursor、Windsurf等)中使用以下规格配置MCP服务器:
{
  "mcpServers": {
    "k6": {
      "command": "/path/to/bin/uv",
      "args": [
        "--directory",
        "/path/to/k6-mcp-server",
        "run",
        "k6_server.py"
      ]
    }
  }
}

  1. 现在让LLM运行测试,例如。 run k6 test for hello.js。k6-mcp服务器将利用以下工具之一启动测试。
  • execute_k6_test:使用默认选项运行测试(持续30秒,10 VU)
  • execute_k6_test_with_options:运行具有自定义持续时间和VU的测试

📝 api参考

执行K6测试

execute_k6_test(
    script_file: str,
    duration: str = "30s",  # Optional
    vus: int = 10          # Optional
)

使用自定义选项执行K6测试

execute_k6_test_with_options(
    script_file: str,
    duration: str,
    vus: int
)

✨ 用例

  • LLM驱动的结果分析
  • 负载测试的有效调试

🤝 贡献

欢迎投稿!请随时提交拉取请求。

📄 许可证

此项目根据MIT许可证获得许可-有关详细信息,请参阅许可证文件。