Token导航 LogoToken导航

MCP Server · 开发工具

UnitTest Generator MCP

一个自动化生成和验证C/C++代码Google Test (GTest)套件的高性能工具,基于libclang进行AST分析并提供技术基线。

stdio官方级别未说明来源级核验工具 5
自动化测试Python开发工具

快速开始

作者 / 组织
ajithksr
提供方
ajithksr
运行时
Python

工具数量

5

来源目录标注

资源数量

0

来源目录标注

提示词数量

0

来源目录标注

GitHub Star

1

仓库热度

收录来源

1 个

MCP World

选型结论

UnitTest Generator MCP 属于开发工具类 MCP Server,公开资料标注 5 个工具,通过stdio 本地进程接入,客户端适配情况以官方文档为准,有可以直接复制的安装命令;接入前先确认权限范围。

分类

开发工具

传输方式

stdio

认证方式

无需认证

部署方式

公开资料未说明

安装与配置

安装命令

python3 main.py analyze path/to/source.cpp

客户端配置示例

{
  "mcpServers": {
    "unittest-generator-mcp": {
      "command": "python3",
      "args": [
        "main.py",
        "analyze",
        "path/to/source.cpp"
      ]
    }
  }
}

按公开安装命令拼出来的示例,字段名和参数以仓库 README 为准;带 YOUR_API_KEY 这类占位符的位置记得换成自己的值。

上手步骤

  1. 1

    准备运行环境

    stdio 服务在本地起进程,需要先装好 Python,再按安装命令拉取依赖。

  2. 2

    安装服务

    复制下面的安装命令执行;命令里带占位符的位置换成自己的密钥或路径。

  3. 3

    写入客户端配置

    在客户端的 MCP 配置里填启动命令和参数,保存后完全退出客户端再打开,让新配置生效。

  4. 4

    验证是否可用

    连接成功后客户端会列出 5 个工具,随便调一个只读工具确认能返回结果。

接入前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

详细介绍

代理C/C++单元测试生成器(MCP服务器)

该项目是一个高性能 模型上下文协议(MCP)服务器 它自动化了C/C++代码的Google测试(GTest)套件的生成和验证。它利用 libclang 用于AST分析,并提供技术基线(边界、EP、MCDC),以帮助LLM主机生成高质量的测试用例。

______________________________________________________________________

🏗️ 建筑与设计

该公用事业公司充当 桥 在C++构建/分析生态系统和大型语言模型(LLM)之间。它将技术分析(AST、构建、覆盖)与智能测试设计分开,使LLM能够专注于创建高价值的测试场景。

系统概述

graph TD
    subgraph "MCP Host"
        A["User / Agent Prompt"] --> B["Host LLM"]
    end
    
    subgraph "MCP Server (FastMCP)"
        C["mcp_server.py"]
        D["CodeAnalyzer"]
        E["StrategyGenerator"]
        F["TestGenerator"]
    end

    subgraph "Local Tooling"
        G["libclang (AST)"]
        H["CMake / Make (Build)"]
        I["GTest / LCOV (Verify)"]
    end

    B  C
    C --> D
    C --> E
    C --> F
    D --> G
    F --> H
    C --> I

序列流:循环中的人工作流程

sequenceDiagram
    autonumber
    participant U as User
    participant H as MCP Host (LLM)
    participant S as MCP Server
    participant T as OS / Tooling

    U->>H: Request Test Generation
    H->>U: Mode Choice (Step-by-Step vs E2E?)
    U-->>H: Step-by-Step

    H->>S: analyze_source_code()
    S-->>H: AST Results (Functions, Types)
    
    H->>S: get_test_strategy_context()
    S-->>H: Technical Baseline (MCDC, Boundaries)
    
    Note over H,U: MANDATORY REVIEW: Strategy
    H->>U: Display Strategy (.md)
    U-->>H: Approve Strategy

    H->>H: Generate Test Implementation Logic

    H->>S: generate_gtest_file(bodies)
    S-->>H: Success (GeneratedUT/test.cpp)
    
    Note over H,U: MANDATORY REVIEW: Code
    H->>U: Display Generated Code
    U-->>H: Approve Code

    H->>S: run_and_verify_tests()
    S->>T: cmake, make, run, lcov
    T-->>S: Execution & Coverage Data
    S-->>H: Final Summary
    H->>U: Final Report (HTML Coverage link)

______________________________________________________________________

🛠️ MCP工具

  1. analyze_source_code:返回深层AST详细信息(签名、类成员、自定义类型)。
  2. analyze_existing_tests:返回现有的GTest套件,以确定覆盖范围差距。
  3. get_test_strategy_context:提供 技术基线 (MCDC条件、边界值)供LLM在生成过程中使用。
  4. generate_gtest_file:将主机提供的测试体合并到一个强大的GTest模板中。
  5. run_and_verify_tests:协调构建和验证管道(CMake、Make、GTest、LCOV)。

______________________________________________________________________

🚀 使用指南

1.独立CLI模式(main.py)

该工具可以直接从命令行用于自动化或本地测试。

  • 分析并制定战略:
  python3 main.py analyze path/to/source.cpp

创建 TestStrategy/source_strategy.yaml 和 .md.

  • 生成测试代码:
  python3 main.py generate TestStrategy/source_strategy.yaml

创建 GeneratedUT/source_test.cpp.

  • 构建并运行覆盖:
  python3 main.py build path/to/source.cpp --coverage --run

执行内置 GeneratedUT/build 并生成HTML覆盖率 GeneratedUT/coverage_html/.

  • 清洁工作区:
  python3 main.py clean

安全移除 GeneratedUT/ 和 TestStrategy/ 目录。

2.MCP模式(技能工作流程)

使用启用MCP的代理时,请使用 cpp_test_generator 技能。支持对象包括:

  • 基洛代码:用途 .kilocode/skills/
  • Roo 代码:用途 .roo/skills/ 和 .roomodes
  • GitHub Copilot:用途 .github/copilot-instructions.md

工作流序列:

  1. 初始化:代理要求“逐步”或“端到端”模式。使用“逐步”进行手动审查。
  2. 技术基线:代理提供战略背景。 请仔细阅读此内容 在 TestStrategy 文件夹。
  3. 批准:授予继续代码生成的权限。
  4. 代码审查:代理显示生成的代码。 检查此内容是否正确 在 GeneratedUT 文件夹。
  5. 最终验证:授予构建和验证的权限。

______________________________________________________________________

📂 项目结构

  • src/:核心逻辑(分析器、策略、生成器)。
  • templates/:Jinja2模板 CMakeLists.txt 以及GTest文件。
  • TestStrategy/:分析结果的输出目录(YAML/MD)。
  • GeneratedUT/:生成的测试和构建工件的输出目录。
  • main.py:独立CLI入口点。
  • mcp_server.py:MCP服务器入口点。

______________________________________________________________________

🔩 安装

需求

  • Linux(针对Ubuntu/Debian进行了优化)
  • libclang, cmake, g++, lcov, python3
  • pip install mcp jinja2 pyyaml rich typer

MCP客户端配置

将此添加到您的 mcp_settings.json 或 mcp.json:

{
  "command": "python3",
  "args": ["/absolute/path/to/UnitTest_Generator_MCP/mcp_server.py"],
  "env": { "PYTHONPATH": "/absolute/path/to/UnitTest_Generator_MCP" }
}

工具与能力

工具数量

5

资源数量

0

提示词数量

0

能力标签

单元测试Python本地部署C/C++自动化测试AST分析GTest

数量来自来源目录的标注,具体工具清单以官方文档为准。

典型使用场景

让助手直接读代码

把仓库、提交记录和 issue 交给模型检索,补全和重构时不用来回复制文件。

在对话里跑命令

触发构建、测试和脚本,执行结果直接回到上下文,省去切终端。

接进开发流程

把 PR、CI 状态和代码审查接进助手,减少在几个工具之间跳。

选择建议

值得选的地方

  • 只提供 5 个工具,职责集中,接入后不容易误操作。
  • 有现成的安装命令,不用自己找入口,照着跑就能起服务。
  • 公开说明写得比较完整,接入前能看清能力边界。

先想清楚的地方

  • stdio 方式要求本地装好 Python,换机器要重新装一遍。
  • 第三方目录整理,版本更新和行为细节以官方仓库为准。

更适合

  • 需要在开发工具场景里让模型直接调用外部能力的人。
  • 想先快速试一下、能接受在本地跑服务的人。

不太适合

  • 完全不想在本地装环境的人。
  • 需要厂商级 SLA 和技术支持的生产环境。

同类对比

5 个同类
MCP Server工具数传输方式安装命令收录来源最后核验
UnitTest Generator MCP

MCP World · 本页

5stdio有1 个2026-05-17
Git 838e2ec1

MCP World

12stdio有2 个2026-05-17
Markitdown MCP 2c653a5f

MCP World

1stdio有1 个2026-05-17
Context7 MCP C671e75a

MCP World

0stdio有1 个2026-05-17
Context7 831acf40

MCP World

0stdio有1 个2026-05-17

按同分类和工具数量挑出最接近的几条,字段以各自详情页为准。

常见问题

5 条

UnitTest Generator MCP 怎么安装?

公开资料给出的安装命令是 python3 main.py analyze path/to/source.cpp,运行环境为 Python。装完后按客户端要求写进 MCP 配置,重启客户端生效。

UnitTest Generator MCP 怎么在 Claude Desktop、Cursor 里配置?

它是stdio 本地进程,客户端配置里要写启动命令和参数,运行环境是 Python;保存后完全退出客户端再打开,配置才会生效。

UnitTest Generator MCP 收费吗?

本站只整理公开资料,不代收费用,也没有标注具体价格。是否收费取决于服务本身和背后的接口额度,正式使用前按官方说明确认。

UnitTest Generator MCP 需要 API Key 吗?

公开资料标注为无需认证,装好就能连;如果实际调用时报鉴权错误,按官方文档补上凭据。

UnitTest Generator MCP 支持哪些客户端?

公开资料没有标注具体客户端;能配置本地 MCP 命令的客户端都能接,配置方式参照官方文档。

来源信息

继续浏览同类 MCP