mcpField
P
PictMCP

PictMCP

本地服务
github.com开发工具032 周前更新

关于 PictMCP

面向使用 AI 助手生成测试用例的软件开发者的已归档 MCP 服务。它通过 WebAssembly 使用 Microsoft 的 PICT 算法,生成确定性的成对组合,并支持约束和结构化 JSON 输出。

主要功能

  1. 01生成成对测试用例
  2. 02应用参数约束
  3. 03通过 WebAssembly 本地运行
  4. 04返回结构化 JSON 结果
  5. 05不进行外部网络调用

适用场景

  1. 01减少多参数测试的组合数量
  2. 02生成浏览器、操作系统和语言组合的用例
  3. 03通过约束排除无效组合

MCP 相关

通过 `generate-test-cases` MCP 工具提供成对测试生成。处理在本地运行,结果以结构化 JSON 返回。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"takeyaqa-pictmcp": {
"command": "npx",
"args": [
"-y",
"pictmcp"
]
}
}
}
启动命令npx -y pictmcp

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npmpictmcp0.6.0

工具

1

收录的工具列表 · 更新于 3 周前

参数类型必填说明
parametersarray是表示用于 PICT 测试用例生成的参数定义。
constraintsTextstring否用于筛除无效组合的 PICT 约束表达式。

详细介绍

PictMCP

注意

此软件包已归档,今后不再维护。请考虑使用 takeyaqa/tester-skills。

PictMCP 徽标

为 AI 助手提供成对测试

PictMCP 是一款面向软件开发者的 MCP 服务,适用于借助 AI 助手设计测试用例,并提供可靠且算法正确的成对测试生成。

为什么要使用它?
  • AI 擅长设计测试,但不擅长组合数学。
  • 成对测试生成必须确定且正确。
  • PictMCP 将思考(AI)与计算(PICT)分开。

更喜欢使用 GUI?请查看 PictRider。

功能

  • 🔒 本地处理 - 所有处理都在本地运行,不会进行外部网络调用
  • ⚡ 由 WebAssembly 驱动 - 使用编译为 WebAssembly 的 Microsoft PICT 算法快速执行
  • 🔗 支持约束 - 定义约束以筛除无效的参数组合
  • 📊 结构化输出 - 返回结构良好的 JSON 结果,便于集成

安装

前置条件
MCP 客户端配置

将以下配置添加到 MCP 客户端中。这是一个配置示例;具体格式可能因客户端而异。详情请参阅 MCP 客户端的文档。

{
  "mcpServers": {
    "PictMCP": {
      "command": "npx",
      "args": ["-y", "pictmcp"]
    }
  }
}

快速开始

安装后,你可以让 AI 助手使用成对组合测试生成测试用例。

提示词示例

为以下参数生成测试用例:

  • 浏览器:Chrome、Firefox、Safari
  • 操作系统:Windows、macOS、Linux
  • 语言:英语、日语、西班牙语

AI 助手将使用 generate-test-cases 工具创建一组经过优化的测试用例,覆盖所有成对组合。

结果示例

AI 助手通常会将结果整理成表格:

#浏览器操作系统语言
1ChromeLinux日语
2ChromemacOS西班牙语
3SafariLinux西班牙语
4FirefoxLinux英语
5SafariWindows英语
6FirefoxWindows西班牙语
7FirefoxmacOS日语
8SafarimacOS日语
9ChromemacOS英语
10ChromeWindows日语
带约束的示例

为以下参数生成测试用例:

  • 浏览器:Chrome、Firefox、Safari
  • 操作系统:Windows、macOS、Linux
  • 语言:英语、日语、西班牙语

约束条件:Safari 只能在 macOS 上运行

你可以用日常语言描述约束,AI 助手会自动将其转换为 PICT 约束语法。

#浏览器操作系统语言
1FirefoxLinux西班牙语
2ChromeWindows西班牙语
3FirefoxWindows日语
4ChromeLinux日语
5ChromemacOS英语
6FirefoxWindows英语
7ChromeLinux英语
8SafarimacOS西班牙语
9SafarimacOS日语
10FirefoxmacOS西班牙语
11SafarimacOS英语

常见问题

它会与外部服务通信吗?

不会。所有处理都在本地运行,不会进行外部网络调用。

我已经在使用 pict CLI,还需要这个工具吗?

如果你的 AI Agent 可以直接执行 CLI 命令,可能不需要这个工具。不过,PictMCP 提供:

  • 面向 AI 助手的标准化 MCP 接口
  • 无需单独安装 PICT(基于 WebAssembly)
  • 结构化 JSON 输出,而非 TSV
什么是成对测试?

成对测试(也称为全对测试)是一种组合测试方法,可生成覆盖所有输入参数可能组合对的测试用例。它能显著减少测试用例数量,同时保持较高的缺陷检测率。

支持哪些约束语法?

你无需直接编写 PICT 语法。只需用自然语言描述约束,你的 AI 助手就会负责转换。PictMCP 支持完整的 PICT 约束语法。详情请参阅 PICT 文档。

许可证

本项目采用 MIT 许可证授权,详情请参阅 LICENSE 文件。

免责声明

PictMCP 按“原样”提供,不附带任何形式的保证。作者不对因使用本项目而造成的任何损害承担责任。

生成的测试用例_不保证覆盖完整_或_不存在缺陷_。请酌情使用其他策略补充成对测试。

PictMCP 是一个独立项目,与 Microsoft Corporation 无关联。


如果你觉得 PictMCP 有用,请考虑为此代码仓库点个星。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。