Skip to main content
Glama

QAFusionX

顺序式 MCP QA 代理。当此服务器在 Cursor 中连接时,它会锁定 Ask 模式,提出两个必答问题,然后执行一个不可跳过的 15 步工作流。完成第 N 步会在 step-by-step/ 中写入一个勾选标记——该标记是第 N+1 步解锁的唯一方式。

控制台是同一引擎的实时 GUI:编号流水线、Ask 模式横幅、产物浏览器,以及一个可以实时观看的测试运行控制台。

已锁定——在每个用户的设备上显示可见浏览器。 工作流是一个流水线,但爬取和 GUI 测试绝不会作为其中的静默任务运行。当任何用户在其机器上运行 QAFusionX 时,该设备上会打开一个单独的浏览器窗口,显示每个屏幕、弹窗和点击。无头模式被拒绝。不存在静默模式。

功能

  1. 询问——项目与目标(Ask 模式)——产品名称、要测试的内容、实时 URL、截图。

  2. 询问——用户故事(Ask 模式,必答)——zip / 文件、Jira 链接,或从系统生成。

  3. 持久化 User stories/ 和 General/01-target.md。

  4. 第 1 轮爬取——每个屏幕和弹窗:捕获 → 推理 → 参考 MD → 实时计划 → 下一次点击。

  5. 冻结第 1 轮计划 / 待办事项。

  6. 第 2 轮爬取——相同的目录结构,寻找第 1 轮遗漏的任何内容。

  7. 生成用户故事——仅当问题 2 选择的是从系统生成时。第 2 轮之后,根据捕获的每个流程创建 GeneratedUser stories/。后续测试仅使用该集合。Zip/Jira 运行将此步骤标记为 N/A。

  8. 完成系统地图——详尽的长篇 markdown(短文件会被拒绝)。

  9. 人工测试用例,采用 Jira 功能格式,存放于 testCase Human/ 下。

  10. 将这些用例上传到 Jira(或写入离线负载)。

  11. 1:1 转换为 testc2ai/ 中的 YAML。

  12. 在 AutomatedScripts/ 中生成 GUI 和 API Playwright 脚本。

  13. 在可见的有头浏览器中运行测试套件(你可以观看每次点击),结果同时流式传输到 GUI。

  14. 将失败项导出到 reports/QAFusionX-Issues.xlsx + .csv,并附上证据。

  15. 提交 Jira 缺陷工单:主题、前置条件、步骤、预期结果、实际结果、证据。

Related MCP server: mcp-playwright-test

本地运行

npm install
npx playwright install chromium
cd console && npm install && cd ..
cp .env.example .env   # optional Jira credentials
npm run dev

点击控制台上的 Run guided demo,即可针对内置的 Intermediary Management 示例(Emergency Details 字段与 Jira 功能用例匹配)执行每一步。

仅 MCP:

npx tsx src/index.ts

将 QAFusionX 附加到 Cursor(每个项目、每个聊天)

Windows — 完整 TBB + mesh 安装(推荐):

git clone https://github.com/thejanaloit/QAFusionX.git $env:USERPROFILE\QAFusionX
cd $env:USERPROFILE\QAFusionX
npm run install:mesh
# or: powershell -ExecutionPolicy Bypass -File .\scripts\install-full-mesh.ps1

这会自动链接并引导(如缺失则 clone + npm install):

组件

角色

ThejaBackBone (TBB)

凭据保管库;如缺失则从 GitHub 自动 clone

ThejaUltimate

编排 + 浏览器 QA;自动 clone + npm install

theGod

高级发明 / 解困;自动 clone + npm install

ThejaThinkingPattern (TTP)

Rule2 思维

ThejaCentralBrain (TCB)

融合 QA 知识

ThejaD

FusionX 银行工具包(可选 clone)

QAFusionX

顺序式 QA 工作流(本仓库)

配置位于 config/tbb-mesh.json 中。可在安装前使用环境变量(THEJA_BACKBONE_ROOT 等)覆盖根目录。

macOS / Linux:

git clone https://github.com/thejanaloit/QAFusionX.git ~/QAFusionX
cd ~/QAFusionX
npm install --omit=dev
python3 scripts/link-tbb-mesh.py
bash scripts/install-global-cursor.sh

这会写入用户级配置(~/.cursor/mcp.json)和用户规则(~/.cursor/rules/qafusionx.mdc、qafusionx-visible-browser.mdc)。Cursor 会将其合并到每个工作区以及每个 Agent/Ask 聊天中。然后:

  1. 命令面板 → Developer: Reload Window

  2. 设置 → Tools & MCP → 打开 QAFusionX(绿色)

本仓库还包含 .cursor/mcp.json,因此仅打开 QAFusionX 文件夹就足够了。安装程序的作用是使其全局生效。

首次使用时,代理必须:

  1. 切换到 Ask 模式。

  2. 询问项目是什么以及要测试什么(URL + 截图)。

  3. 询问用户故事(zip、Jira 或生成)。这第二个问题是必答的。

在存储两个答案之前,所有后续工具都会返回 BLOCKED。

发布到 GitHub

构建此项目的云代理没有 GitHub 登录权限,因此无法从这里创建 github.com/<you>/QAFusionX。源代码已在 Cursor Origin 远程上。在你的机器上,执行 gh auth login 之后:

bash scripts/publish-github.sh QAFusionX public

这将创建 GitHub 仓库,添加 github 远程,并推送 main 分支。

用户故事来源

方法

说明

Zip / 文件

qafusionx_submit_user_stories,使用 source: "zip" 和 zipPath 或 files[]

Jira

source: "jira" 和 jiraLink(浏览 URL、JQL 或问题键)。需要 JIRA_EMAIL + JIRA_API_TOKEN

生成

source: "generate" 仅记录选择。第 2 轮之后,根据捕获的屏幕创建 GeneratedUser stories/。测试用例必须使用该目录。

产物布局

artifacts/
  step-by-step/                 ticks — the only unlock
  User stories/                 zip / Jira stories
  GeneratedUser stories/        method 3 only, after Round 2
  General/                      01-target.md, human-qa-research.md
  Screens/
    round one/screenshots|references|plan/
    round two/screenshots|references|plan/
    complete-system-map.md
  testCase Human/               Jira-shaped markdown + json
  testc2ai/                     YAML for the AI runner
  AutomatedScripts/gui|api
  reports/                      suite results, XLSX/CSV, proof
  jira/                         upload log, payloads, created keys
  bugs/                         bug tickets with proof

人工测试用例格式

标题遵循 Jira 功能模式:

[Sales & Marketing Module] [Intermediary Management][Add new/Manage][FP] - Validate that the Emergency Details section displays all required fields.

必需部分:Affects versions、Labels、Test Case Type、Priority、Parent、Linked work items、Preconditions、Test Steps、Test Comments、Expected Result、Actual Result。

Jira

设置 JIRA_BASE_URL、JIRA_EMAIL、JIRA_API_TOKEN、JIRA_PROJECT_KEY。如果没有这些,QAFusionX 仍会通过写入 jira/payloads/*.json 来完成各步骤——它绝不会跳过节点。

可见浏览器(已锁定)

此规则已在引擎、MCP 协议和 Cursor 规则中锁定。你无法将其关闭。

流水线仍然逐步运行。这并不意味着第 1 轮、第 2 轮或 GUI 测试在后台运行。

当 QAFusionX 在用户的设备上运行时:

  1. 在该设备上打开一个单独的实时浏览器窗口。

  2. 爬取和 GUI 测试在该窗口中发生。

  3. 用户观看每次导航和点击。

QAFUSIONX_HEADED=0 会被拒绝。如果机器没有显示器,QAFusionX 会停止并告诉你改在用户自己的计算机上运行。它不会以无头模式继续。

僧伽罗语 — 如何使用

在 Cursor 中连接 QAFusionX MCP 后,进入 Ask 模式。首先会询问项目、要测试的内容、URL 和截图。然后必须询问用户故事——zip、Jira 链接或从系统生成。只有回答完这两个问题后,才能开始爬取 / 测试生成。任何步骤都不能跳过进入下一步;step-by-step/ 中的勾选标记才是下一步的解锁方式。

不要把它当作某个静默流水线的一部分来运行。必须在每个用户的设备上打开单独的浏览器窗口并可见。无头模式已被锁定。

Maintenance

ActivitySlowing
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers