用途:分析 GitHub Actions 运行中的 Playwright 端到端测试失败。输入 run ID 或 URL,脚本会下载并解析 JSON 报告、trace 文件、截图和测试日志,识别根因并给出下一步建议。适用于 CI 失败排查,以及 Test: Merge to branch、Test: Full Suite、Positron Build: Daily Release 等流程的失败分类。
主要能力:提供合并脚本 e2e-gather-run-info.js(收集运行元数据、失败作业、制品、非 e2e 日志摘要、提交信息)、e2e-process-project.js(Path A,处理分片 blob 报告:合并、提取失败、扫描 blob、解析 trace、提取截图与 error-context)、e2e-process-s3.js(Path B,处理 CloudFront 托管的 HTML 报告,解出 base64 报告并下载 trace 与 error-context 附件)。另有独立脚本 e2e-extract-failures.js、e2e-parse-trace.js、e2e-inspect-blobs.js、e2e-query-history.js。输出包括失败列表、每个测试尝试的 trace 时间线、截图路径、error-context 页面快照、DOM 存在性报告和 console 摘要。
使用方式:先运行 node "$SKILL_DIR/scripts/e2e-gather-run-info.js" <RUN_URL>;若 projects 非空走 Path A,对每个 project 运行 node "$SKILL_DIR/scripts/e2e-process-project.js" --download --run-id <RUN_ID> --repo <REPO> --project <PROJECT> --output-dir /tmp/e2e-analysis-<PROJECT> --cleanup;若无 project 则走 Path B,解析 REPORT_DIR 后运行 node "$SKILL_DIR/scripts/e2e-process-s3.js" --report-url https://d38p2avprg8il3.cloudfront.net/<REPORT_DIR>/ --output-dir /tmp/e2e-analysis-<JOB_LABEL> --cleanup。可选设置 E2E_INSIGHTS_API_KEY 后运行 e2e-query-history.js 查询历史健康度。分析需参考 rubric.md 的证据顺序,对定位符、可见性、属性或文本失败优先读 error-context 页面快照。
适用场景:CI 整体失败分类、硬失败深度分析、判断测试选择器过时还是产品回归、结合提交与历史数据判断是否已知 flaky。
限制:需已认证的 GitHub CLI;Path A 需 npx 可用的 @playwright/test(仅 positron 仓库);脚本需 Node.js,解压 zip 需 unzip 在 PATH 中。重试后通过的 flaky 测试不在此深度分析,交由 triage-e2e-test 技能处理;历史查询为可选,API 不可用时跳过。其他未在资料中说明的限制未提供。