MCP - JaCoCo 是一款服务器工具,它能够把 JaCoCo 代码覆盖率报告转换为适合大型语言模型(LLMs)使用的格式,让人工智能驱动的分析变得更加高效、有效。
MCP - JaCoCo 可将传统的 JaCoCo 代码覆盖率报告转换为适合 AI 处理的格式,助力开发团队在测试工作流中充分发挥人工智能的潜力,提升效率与洞察力。
使用 uv 安装 MCP - JaCoCo,配置如下:
{
"mcpServers": {
"mcp-jacoco-reporter-server": {
"command": "uv",
"args": [
"run",
"--with",
"mcp[cli]",
"mcp",
"run",
"/Users/crisschan/workspace/pyspace/mcp-jacoco-reporter/mcp-jacoco-reporter-server.py"
],
"env": {
"COVERED_TYPES": "nocovered, partiallycovered, fullcovered"
},
"alwaysAllow": [
"jacoco_reporter_server"
]
}
}
}
jacoco_reporter_server 工具可读取 JaCoCo XML 报告并返回 JSON 格式的覆盖率数据。
jacoco_xmlreport_path:JaCoCo xml 报告路径(jacoco.xml)示例输出格式:
[
{
"sourcefile": "PasswordUtil.java",
"package": "com/cicc/ut/util",
"lines": {
"nocovered": [],
"partiallycovered": []
},
"branch": {
"nocovered": [],
"partiallycovered": []
}
},
{
"sourcefile": "UserServiceImpl.java",
"package": "com/cicc/ut/service/impl",
"lines": {
"nocovered": [
32,
40,
51,
67
],
"partiallycovered": []
},
"branch": {
"nocovered": [],
"partiallycovered": []
}
}
]
随着人工智能和大语言模型在软件开发中的作用日益增强,传统的 JaCoCo 代码覆盖率报告——尽管对人类有用——其 XML 格式并不适合 AI 工具进行处理或分析。MCP - JaCoCo 搭建了这座桥梁,将这些报告转换为 LLM 友好的格式,为开发团队带来了显著的优势: