0f6f91e61a
Restore alert history filters and stats fields, paginate command/session logs for the SPA, show script labels on schedules, and land integration/E2E coverage with rebuilt web assets.
1.8 KiB
1.8 KiB
Playwright 全量 E2E — 本地验证报告
日期: 2026-06-08
环境: http://127.0.0.1:8600 · admin + NEXUS_E2E_PASSWORD · Chromium headless
结果(最终)
cd frontend && npx playwright install chromium # 首次
NEXUS_E2E_BASE=http://127.0.0.1:8600 \
NEXUS_E2E_USER=admin \
NEXUS_E2E_PASSWORD=*** \
npm run test:e2e
| 指标 | 值 |
|---|---|
| 合计 | 35 |
| 通过 | 35 |
| 失败 | 0 |
| 跳过 | 0 |
| 耗时 | ~35s |
复验(清理后 · 2026-06-08)
| 套件 | 结果 |
|---|---|
pytest tests/integration tests/chain |
27 passed |
pytest tests/ -m "not chain and not slow" |
427 passed |
pytest tests/ -m slow |
1 passed(IT-INST-001) |
scripts/local_integration_smoke.sh |
OK |
npm run test:e2e |
35 passed (~35s) |
前置:bash scripts/start-dev.sh(API :8600 healthy)
根因与修复(本轮)
| 问题 | 处理 |
|---|---|
| 并行 UI 登录触发 admin 锁定(429) | e2e/fixtures.mjs:每 worker 一次 API 登录 + 轮换后更新 storageState |
page.goto(#/route) 在 keep-alive SPA 下偶发停在 #/ |
helpers.nav 改为侧栏链接点击;设置页点抽屉「设置」 |
| 凭据入口改为服务器页对话框 | credentials / acceptance #08 点「凭据」按钮,不再依赖 ?credentials=1 |
getByText('命令日志') strict 双匹配 |
限定 main .v-card-title |
web/app 构建滞后(旧 bundle 含「导出CSV」) |
npx vite build 同步源码与静态资源 |
Spec 目录(19 文件)
full-acceptance.spec.mjs(15 步 serial)pages/*.spec.mjs(18 页域用例 + install/login/auth 无会话)
结论
Wave 1–5 测试矩阵对应的 Playwright 全量 35/35 green,可与 tests/integration + tests/chain(27 passed)一并作为 L4 证据。