这是一个执行 tox 命令以在项目中使用 pytest 运行 Python 测试的 MCP 服务器。该服务器通过模型上下文协议(MCP)提供了一种方便的方式来运行和管理 Python 测试。
run_tox_tests - 使用各种模式和选项执行 tox 测试
all:运行所有测试或特定组的测试file:运行特定文件中的测试case:运行特定的测试用例directory:运行指定目录中的所有测试clients:与客户端相关的测试api:API 端点测试auth:认证测试uploads:上传功能测试routes:路由处理器测试安装依赖项:
npm install
构建服务器:
npm run build
开发时自动重建:
npm run watch
要在 VSCode 中使用,请将服务器配置添加到您的 MCP 设置文件中:
~/.config/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json
{
"mcpServers": {
"tox-testing": {
"command": "node",
"args": ["/path/to/tox-testing/build/index.js"],
"env": {
"TOX_APP_DIR": "/path/to/your/python/project",
"TOX_TIMEOUT": "600"
}
}
}
}
env.TOX_TIMEOUT:(可选)等待测试执行完成的最大时间(秒)。如果测试运行时间超过此超时时间,则会被终止。默认值为 600 秒(10 分钟)env.TOX_APP_DIR:(必需)包含 tox.ini 文件的目录。这是执行 tox 命令的位置。路径应指向包含 tox.ini 的 Python 项目的根目录。超时设置特别重要,因为它可以:
该服务器提供了一个工具 run_tox_tests,可以在不同模式下使用:
// 运行所有测试
{
"mode": "all"
}
// 运行特定组的测试
{
"mode": "all",
"group": "api"
}
// 运行特定文件中的测试
{
"mode": "file",
"testFile": "tests/test_api.py"
}
// 运行特定的测试用例
{
"mode": "case",
"testFile": "tests/test_api.py",
"testCase": "test_endpoint_response"
}
// 运行特定目录中的测试
{
"mode": "directory",
"directory": "tests/api/"
}
当使用此 MCP 与 Cline 结合时,您可以配置 Cline 的自定义指令来高效地处理测试执行。以下是一个推荐的工作流程:
如果您被要求在项目上运行测试,请使用 tox-testing MCP。请按照以下步骤操作:
1. 除非您被告知要运行特定的测试文件或测试用例,否则运行项目中的所有测试。
2. 查看并单独重新运行每个失败的测试用例,根据其输出进行故障排除和修复问题。
3. 重复步骤 2,直到测试用例通过。
4. 一旦步骤 1 中的所有失败测试用例都通过了,再次运行所有测试,并重复所有步骤,直到所有测试都通过。
此工作流程确保:
与 Cline 的示例交互:
您:运行这个项目的测试
Cline:我将使用 tox-testing MCP 来运行所有测试:
{
"mode": "all"
}
您:修复 test_api.py 中的失败测试
Cline:我将首先运行特定的测试文件:
{
"mode": "file",
"testFile": "tests/test_api.py"
}
然后分别解决每个失败的测试用例:
{
"mode": "case",
"testFile": "tests/test_api.py",
"testCase": "test_endpoint_response"
}
请参阅 CONTRIBUTING.md 了解我们的行为准则以及提交拉取请求的过程。