安全扫描
OpenClaw
可疑
medium confidence该技能的目的和运行行为与端到端测试编排器一致,但包元数据未完全声明所需的工具和环境使用(docker/npx/npm 和可选的 PW_DOCKER_IMAGE),脚本将拉取和执行第三方镜像/包 — 在运行于敏感系统或秘密之前请审查。
评估建议
该技能看似实现了正常的Playwright/Cypress端到端工作流,但在安装或运行之前:1) 预计运行 `npm ci`/`npm i` 和 `npx playwright`(这些将下载/执行包并可能运行后安装脚本)并拉取Playwright Docker镜像(默认 `mcr.microsoft.com/playwright:v1.58.2-jammy`);2) 审查仓库的 `package.json` 和锁文件以查找不受信任的包或危险的生命周期脚本;3) 在隔离环境(CI 运行器或专用 VM/容器)中运行,不在具有敏感凭据或生产访问权限的机器上运行;4) 确认您对 Docker 挂载当前工作目录到容器(脚本挂载 `$PWD`)感到舒适;5) 如果需要审计或固定图像,请将 `PW_DOCKER_IMAGE` 设置为经过审查的图像;6) 如果测试需要凭据,请安全地提供它们(不通过未审查的代理)并避免在存储库中嵌入秘密。主要的技术不一致是缺少声明的运行时依赖项(docker、node/npm/npx 和可选的 `PW_DOCKER_IMAGE`) — 使用前请修复或验证这些依赖项。...详细分析 ▾
⚠ 用途与能力
该技能的元数据中声称没有所需的二进制文件或环境变量,但提供的指令和脚本预计使用 Node/npm/npx 和(可选)Docker。运行测试将执行 `npm install/ci` 并可能从存储库运行代码。声明的要求与实际运行需求不匹配。
✓ 指令范围
SKILL.md 保持在主题内:它指导测试规划、实现 Playwright 脚本、运行测试、收集截图/视频/追踪信息并生成报告。它指示代理从项目源读取稳定选择器 — 适合此目的且仅限于项目/测试工件。
ℹ 安装机制
未提供安装规格(仅指令),但脚本从 `mcr.microsoft.com` 拉取官方 Playwright Docker 镜像并运行 `npm ci || npm i`。拉取官方 Microsoft Playwright 镜像是预期的;然而,`npm ci` 将从 npm 注册表获取和执行包(包括生命周期/后安装脚本),这会增加运行时代码执行风险和网络暴露。
⚠ 凭证需求
该技能声明没有所需的环境变量,但 `run-playwright-docker.sh` 尊重如果设置了 `PW_DOCKER_IMAGE`,并且脚本假设 `docker/npx` 在 PATH 上可用。元数据应将这些声明为预期的运行时依赖项。此外,执行测试通常需要测试凭据/数据(此处未请求) — 缺乏关于秘密处理的指导是一个缺口。
✓ 持久化与权限
该技能不请求 `always:true`,不修改其他技能,并仅写入本地 `test-results` 目录和 `run.log`。自主调用是启用(默认)的,但不与其他高风险标志结合。
安装前注意事项
- 预计运行 `npm ci`/`npm i` 和 `npx playwright`(这些将下载/执行包并可能运行后安装脚本)并拉取Playwright Docker镜像(默认 `mcr.microsoft.com/playwright:v1.58.2-jammy`);
- 审查仓库的 `package.json` 和锁文件以查找不受信任的包或危险的生命周期脚本;
- 在隔离环境(CI 运行器或专用 VM/容器)中运行,不在具有敏感凭据或生产访问权限的机器上运行;
- 确认您对 Docker 挂载当前工作目录到容器(脚本挂载 `$PWD`)感到舒适;
- 如果需要审计或固定图像,请将 `PW_DOCKER_IMAGE` 设置为经过审查的图像;
- 如果测试需要凭据,请安全地提供它们(不通过未审查的代理)并避免在存储库中嵌入秘密。主要的技术不一致是缺少声明的运行时依赖项(docker、node/npm/npx 和可选的 `PW_DOCKER_IMAGE`) — 使用前请修复或验证这些依赖项。
安全有层次,运行前请审查代码。
运行时依赖
无特殊依赖
版本
latestv1.0.02026/3/15
● 可疑
安装命令
点击复制官方npx clawhub@latest install e2e-test-orchestrator
镜像加速npx clawhub@latest install e2e-test-orchestrator --registry https://cn.longxiaskill.com
技能文档
(以下为 SKILL.md 中文翻译,保留 YAML frontmatter 不翻译)
# E2E 测试编排器 严格按以下顺序执行:测试规划 → 脚本实现 → 执行测试 → 归因/修复 → 结果报告。
1)先做测试规划
- 阅读需求说明、验收标准、目标环境信息。
- 使用
references/case-template.md产出分级测试用例:
- 每条用例必须明确:
Playwright 关键要求(先读)
- 在开始实现前,先阅读
references/playwright-重点与docker兜底.md。 - 默认尝试本地模式(local)运行 Playwright。
- 若本地依赖安装失败(例如 Ubuntu 25 包不兼容/缺失、无 sudo、浏览器缺库),立即切换 Docker 模式,不要阻塞流程。
- Docker 模式统一使用
scripts/run-playwright-docker.sh执行,并在报告中注明镜像版本与执行模式。 - 可优先使用
scripts/run-playwright-auto.sh:先尝试 local,失败后自动切 docker。
2)按用例实现自动化脚本
- 默认优先 Playwright + TypeScript(除非用户指定其他框架)。
- 每条已确认用例映射为一个测试文件或一个
test(...)用例块。 - 元素定位遵循
references/locator-strategy.md。 - 使用确定性等待与断言,避免盲目
sleep。 - 失败时必须保留证据:
3)执行测试并收集证据
- 先跑定向集(新增/变更相关用例),按需再跑全量回归。
- 推荐优先使用
scripts/run-playwright-auto.sh自动选择执行模式;也可手动选择:本地用scripts/run-playwright.sh,本地不可用时改用scripts/run-playwright-docker.sh。 - 记录截图、视频、trace、日志的输出路径。
4)若用例执行受阻,先归因再处理
当测试无法继续时:- 先做根因分类:
- 若是 脚本问题:立即修复并重跑。
- 若是非脚本问题:不得掩盖,按 blocker 记录复现与证据。
- 维护最小修复日志:
5)输出结构化测试报告
严格按references/report-template.md 组织输出,至少包含:
- 测试范围与环境
- 用例结果汇总(通过/失败/阻塞)
- 缺陷与严重级别
- 已实施脚本修复
- 剩余风险
- 证据索引(路径/链接)
- 下一步建议