JMeter测试执行服务

JMeter MCP Server是一个通过MCP兼容客户端执行JMeter测试的服务,支持非GUI和GUI模式测试执行,适用于性能测试和调试场景。

  • by Narasimhakatta
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 narasimhakatta/mcp-server

使用说明

🚀 JMeter MCP 服务器

这是一个模型上下文协议(MCP)服务器,允许通过MCP兼容的客户端执行JMeter测试。

[!重要] 📢 在JMeter内部寻找AI助手? 🚀 结账 羽毛魔杖

📋 特性

  • 📊 在非GUI模式下执行JMeter测试
  • 🖥️ 在GUI模式下启动JMeter
  • 📝 捕获并返回执行输出

🛠️ 安装

本地安装

  1. 安装 uv:

  2. 确保JMeter已安装在您的系统上,并且可以通过命令行访问。

⚠️ 重要:确保JMeter可执行。您可以通过运行以下命令来实现:

chmod +x /path/to/jmeter/bin/jmeter
  1. 配置 .env 文件,请参阅 .env.example 文件以获取详细信息。
# JMeter Configuration
JMETER_HOME=/path/to/apache-jmeter-5.6.3
JMETER_BIN=${JMETER_HOME}/bin/jmeter

# Optional: JMeter Java options
JMETER_JAVA_OPTS="-Xms1g -Xmx2g"

💻 MCP使用

  1. 使用兼容MCP的客户端(例如Claude Desktop、Cursor、Windsurf)连接到服务器

  2. 向服务器发送提示:

Run JMeter test /path/to/test.jmx
  1. MCP兼容客户端将使用可用工具:
    • 🖥️ execute_jmeter_test:在GUI模式下启动JMeter,但不按照JMeter设计执行测试
    • 🚀 execute_jmeter_test_non_gui:在非GUI模式下执行JMeter测试(默认模式以获得更好的性能)

🏗️ MCP配置

将以下配置添加到MCP客户端配置中:

{
    "mcpServers": {
      "jmeter": {
        "command": "/path/to/uv",
        "args": [
          "--directory",
          "/path/to/jmeter-mcp-server",
          "run",
          "jmeter_server.py"
        ]
      }
    }
}

✨ 用例

LLM驱动的结果分析:收集和分析测试结果。

调试:在非GUI模式下执行测试进行调试。

🛑 错误处理

服务器将:

  • 验证测试文件是否存在
  • 检查文件的扩展名是否为.jmx
  • 捕获并返回任何执行错误