场景组合包 · 3 个工具 · 收录于 2026-08-29

自动化测试闭环(静态分析 → 沙箱执行 → 浏览器 E2E) 部分实测

改了代码想自动验证不回归——静态分析先拦、沙箱里跑得起来、浏览器里断言真实页面;三个环节各自有工具但没有成套编排

场景

你改完代码,最怕的是「不知道自己改坏了什么」。想自动验证不回归,有三个确定性环节:静态分析(提交前拦明显问题)、沙箱执行(隔离环境把代码真的跑起来)、浏览器 E2E(断言页面关键元素与路由真实可访问)。三个工具各自都能跑(条目均收录并分项实测),但缺的是成套编排与顺序。

本组合包把「静态 → 沙箱 → E2E」串成一条验证链路:deepcode 静态分析(第一道)、swe-rex 沙箱执行(第二道)、playwright-mcp 浏览器 E2E(第三道)。组合链路实测待补(三工具分项已实测,见验证证据),装完先有链路骨架,验证能力随实测补全。

组合成员 (3)

deepcode(静态分析)

下载:PyPI 包 `deepcode-hku`;国内必须带清华镜像(官方直连当次预检 16s 边缘,可能触发 15s 读超时)
版本要求:2.1.0;Python >= 3.12

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple deepcode-hku
deepcode --version   # 预期输出: DeepCode 2.1.0

工具手册 →

swe-rex(沙箱执行)

下载:PyPI 包 `swe-rex`;国内必须带清华镜像
版本要求:1.4.0;Python >= 3.10;沙箱执行需 Docker(本环境未实测沙箱运行)

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple swe-rex==1.4.0
swerex-remote --help   # 预期输出: usage: swerex-remote [-h] [--host HOST] [--port PORT] --auth-token AUTH_TOKEN

工具手册 →

playwright-mcp(浏览器 E2E)

下载:npm 包 `@playwright/mcp`;国内必须带 npmmirror 前缀(2026-08-29 实测 3 秒装完)
版本要求:0.0.79;Node >= 18;首次运行需下载浏览器引擎(chromium 113.9MiB)

npm_config_registry=https://registry.npmmirror.com npm install -g @playwright/mcp
npx --no-install @playwright/mcp --version
npx --no-install playwright install chromium

工具手册 →

方案总览

工具管什么为什么是它
deepcode静态分析(第一道,提交前)拦明显问题最早最便宜;pip 生态
swe-rex沙箱执行(第二道,跑起来验证)隔离环境跑代码不怕炸;Docker 沙箱
playwright-mcp浏览器 E2E(第三道,真实页面断言)断言页面真实可访问;npm 生态

备选方案:只想要「提交前静态检查」→ 只装 deepcode;只想要「浏览器自动测」→ 只装 playwright-mcp。生态隔离是天然优势:pip 侧(deepcode/swe-rex)与 npm 侧(playwright-mcp)分属独立生态,venv 与 npm prefix 天然隔离,不会互相污染依赖。

快速开始

一键脚本由本文档自动生成(渲染后位于 pages/combos/combo-auto-test.sh),逐条执行:
bash pages/combos/combo-auto-test.sh
  • 装完你会得到:deepcode / swerex-remote / @playwright/mcp 三个命令可用,「静态 → 沙箱 → E2E」验证链路骨架。
  • 预计耗时:10-15 分钟。最大卡点 = deepcode 全量依赖(实测约 40s,网络差更久)+ chromium 引擎下载(约 114MiB)。
  • 前置条件:Python >= 3.12(deepcode 硬性);Node >= 18(playwright-mcp);Docker(swe-rex 沙箱,未实测)。
想弄明白每一步在干什么、装错了怎么恢复 → 看「逐步教学」。一键脚本出问题 → 按逐步教学手动执行定位。

逐步教学

第 1 步:装 deepcode(静态分析,提交前第一道)

deepcode 是验证链路的「第一道闸」:提交前先静态分析,明显问题(类型/依赖/常见反模式)在跑测试前就拦下来——越早发现问题越便宜。它是重件:Python >= 3.12,全量依赖实测约 40 秒。装完还需配置 provider 才能跑分析(本地 provider 不需要云 key)。

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple deepcode-hku
deepcode --version   # 预期输出: DeepCode 2.1.0

预期输出: DeepCode 2.1.0

装好确认:

  • deepcode --version 输出 DeepCode 2.1.0;
  • deepcode init 初始化成功。

卡住怎么办:

  • 安装慢(40s+ 正常)→ 等;超时重试一次(命令已带清华镜像)。
  • Python 版本不足 → deepcode 需要 3.12,先升级 Python 再装。
  • 跑分析报 provider 未配置 → deepcode provider set <厂商> --api-key <key>;本地 provider 无需 key。

第 2 步:装 swe-rex(沙箱执行,跑起来验证)

第二道闸是「跑起来」:swe-rex 把代码放进沙箱执行,环境隔离、不怕搞坏本机。装完提供 swerex-remote 命令。真实沙箱执行需要 Docker(本环境未实测沙箱运行),CLI 层已实测;无 Docker 也能装、CLI/库层可用,只是沙箱段要等有 Docker 的环境补测。

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple swe-rex==1.4.0
swerex-remote --help   # 预期输出: usage: swerex-remote [-h] [--host HOST] [--port PORT] --auth-token AUTH_TOKEN

预期输出: usage: swerex-remote [-h] [--host HOST] [--port PORT] --auth-token AUTH_TOKEN

装好确认:

  • swerex-remote --help 打印 usage;
  • 与 deepcode 同 venv 共装后两个 --version 均正常。

卡住怎么办:

  • pip 超时 → 清华镜像已内置,重试一次。
  • 沙箱报 Docker 错 → 需要 Docker;没有就先跳过沙箱段,CLI 面不受影响。

第 3 步:装 playwright-mcp(浏览器 E2E,真实页面断言)

第三道闸是「真页面」:playwright-mcp 驱动真实浏览器,断言页面关键元素、路由真实可访问。npm 安装极快(npmmirror 实测 3 秒),但首次运行要下载浏览器引擎(chromium 约 114MiB,实测走 playwright CDN 可下)。无 GUI 环境用 --headless。

npm_config_registry=https://registry.npmmirror.com npm install -g @playwright/mcp
npx --no-install @playwright/mcp --version
npx --no-install playwright install chromium

预期输出: @playwright/mcp 版本号 + chromium 下载完成

装好确认:

  • npx --no-install @playwright/mcp --version 输出版本号(0.0.79);
  • chromium 下载完成后,跑一次页面冒烟(实测通过,证据)。

卡住怎么办:

  • npm 慢 → 命令已带 npmmirror registry。
  • chromium 下载失败(CDN 超时)→ 换网络窗口重试 npx --no-install playwright install chromium;或配 playwright 镜像环境变量。
  • 无 GUI → 运行参数加 --headless。

装完验收(一步到位)

作用:装完跑下面一条命令块,全绿 = 本组合包就绪;某条失败 → 回「逐步教学」对应步骤定位。
deepcode --version
swerex-remote --help
npx --no-install @playwright/mcp --version

预期输出: DeepCode 2.1.0;swerex-remote 打印 usage;@playwright/mcp 0.0.79(chromium 引擎已下载)。全绿 = 静态→沙箱→E2E 验证链路命令面就位

注:成员级命令已实测;swe-rex 沙箱执行需 Docker,未实测、如实标注。

日常使用

启动与入口

  • deepcode:deepcode init → deepcode run(分析任务)。
  • swe-rex:swerex-remote --auth-token <token> 起沙箱服务(Docker 环境)。
  • playwright-mcp:npx --no-install @playwright/mcp(MCP 服务,默认端口 8931,--port 可改;--headless 无头模式)。

常用操作

  1. 验证链路:deepcode run(静态)→ 沙箱跑测试(swe-rex)→ @playwright/mcp 断言页面(E2E)。
  2. 只跑静态:deepcode run --target <目录>。
  3. 只跑 E2E:起 playwright-mcp 后让 Agent 断言关键路由/元素。
  4. 预检一条龙:python3 --version && node --version && docker --version 确认三件前置齐。

数据与目录

  • deepcode:配置 ~/.config/deepcode/(推断,以官方为准)。
  • swe-rex:沙箱由 Docker 管理,无固定数据目录。
  • playwright-mcp:浏览器引擎在 ~/.cache/ms-playwright/(可删,重新 install 即恢复)。

卸载与清理

按安装相反顺序卸载:

# 1. playwright-mcp(npm 全局)+ 浏览器引擎缓存
npm uninstall -g @playwright/mcp
rm -rf ~/.cache/ms-playwright
# 2. swe-rex + deepcode(同 venv)
pip uninstall -y swe-rex deepcode-hku
提示:浏览器引擎缓存约 114MiB,卸载时一并清掉释放空间。

安装顺序

  1. 预检:python3 --version(>= 3.12,deepcode 硬性)+ node --version(>= 18)+ docker --version(swe-rex 沙箱)。
  2. deepcode(pip,静态分析无端口无后台)。
  3. swe-rex(pip,沙箱用 Docker;无 Docker 时 CLI/库层仍可用,沙箱段标注未实测)。
  4. playwright-mcp(npm + chromium 引擎 ~114MiB;无 GUI 环境用 --headless)。

依赖警告

  • 冲突(3 对全查,出处:站内文档):

本站实测记录

  • possible-compatible 2 对:deepcode×playwright-mcp、playwright-mcp×swe-rex(写面分析:playwright-mcp 无共享配置写面——输出单文件/临时 profile/代理配置)
  • 判定基线:pip 侧(deepcode/swe-rex)与 npm 侧(playwright-mcp)分属独立生态,venv 与 npm prefix 天然隔离
  • 版本:Python >= 3.12(deepcode,比 swe-rex 的 3.10 更严,按 3.12 预检);Node >= 18(playwright-mcp);Docker(swe-rex 沙箱,未实测)
  • 环境:playwright-mcp 默认监听 8931 端口(--port 可改)、chromium 引擎 113.9MiB 磁盘;swe-rex 沙箱拉起 Docker 容器(资源占用按容器隔离);deepcode 无后台进程
  • 国内网络:pip → 清华镜像;npm → npmmirror;浏览器引擎走 playwright CDN(2026-08-29 实测下载成功)

FAQ

  1. 三个工具跨 pip/npm 生态,会不会互相污染? → 不会。venv(pip)与 npm prefix(node)天然隔离;deepcode×swe-rex 已实测 compatible,另两对写面分析为 possible-compatible。
  2. deepcode 装得慢正常吗? → 正常(全量依赖约 40s,网络差更久);命令已带清华镜像,超时重试一次即可。
  3. 没有 Docker 能用这套吗? → 能装能用前两道(静态 + CLI),沙箱段(swe-rex 真实执行)需要 Docker,未实测。
  4. chromium 下载不下来? → 换网络窗口重试 npx --no-install playwright install chromium,或配 playwright 镜像环境变量。
  5. 无图形界面能跑 E2E 吗? → 能,playwright-mcp 加 --headless。

验证证据

每份组合包在隔离环境实测(冒烟 + 写面检查),未实测项在文中如实标注;实测日期见下方验证证据。

验证于 2026-08-29 · TTL 到期 —(180 天)

  • 分工具实测(各条目已有证据):deepcode 2.1.0 清华镜像 40s 全量依赖(实测记录(本地留存));swe-rex 1.4.0 CLI 实测 + 沙箱未实测(实测记录(本地留存));playwright-mcp 0.0.79 npmmirror 3s 安装 + chromium 113.9MiB 下载 + 页面冒烟(实测复现日志(2026-08-29) +)
  • 未实测:三工具成套链路(静态 → 沙箱 → E2E 同一环境跑通);swe-rex 沙箱段(Docker)

← 全部组合包 | 工具货架 | 遇到问题?去 问题空间 提交求助卡