mirror of
https://github.com/nexu-io/open-design.git
synced 2026-09-20 06:15:06 +08:00
028bde50ad
* fix(release): harden prerelease E2E validation
* fix(daemon): refresh active run tool tokens
Generated-By: looper 0.11.8 (runner=fixer, agent=codex)
* chore(release): keep Feishu notification unchanged
* fix(daemon): retain media tasks for active runs
Associate token-authored media tasks with their owning run and defer terminal cleanup while that run still has an active tool token. Correct the prerelease status document to reflect the final Feishu notification topology.
Generated-By: looper 0.11.8 (runner=fixer, agent=codex)
* test(e2e): defer system theme coverage
* test(e2e): remove retired design system settings flows
* fix(e2e): close prerelease coverage gaps
* fix(release): remove unrelated UI changes
Generated-By: looper 0.11.8 (runner=fixer, agent=codex)
* fix(e2e): restore remaining prerelease coverage
* docs(e2e): record remaining scoped gaps
* test(e2e): isolate workflow command fixtures
Generated-By: looper 0.11.8 (runner=fixer, agent=codex)
* test(e2e): preserve Node in workflow fixture PATH
Generated-By: looper 0.11.8 (runner=fixer, agent=codex)
* fix(ci): skip Playwright apt deps on Blacksmith runners
Generated-By: looper 0.11.8 (runner=fixer, agent=codex)
* Revert "fix(ci): skip Playwright apt deps on Blacksmith runners"
This reverts commit 201f3f3ee3.
* fix(plan): reliably open generated artifacts
* fix(plan): reject unconfirmed artifact paths
3.8 KiB
3.8 KiB
E2E 用例库
这个目录用于维护当前自动化测试覆盖的 QA 用例文档,主要索引 e2e/ 套件,并在必要处补充与同一用户流直接相关的 apps/web 组件测试。
文档范围
- 优先记录已经存在于
e2e/下的自动化覆盖;当某个用户流主要由apps/web组件测试保护时,也会一并注明。 - 以用户视角描述场景,不展开实现细节。
- 新增测试文件或新增重要场景时,同步更新对应模块文档。
- 插件系统总验收维护在
../plugin-system-test-suite.md;Registry / CLI / daemon 跨层用例另见../plugin-registry-eval-cases.md。
模块索引
| 模块 | 覆盖重点 | 对应测试文件 |
|---|---|---|
| status.md | 当前 E2E 分层、最近补强范围、grouped run 状态、已知 intentional gap | e2e/ui/app.test.ts, e2e/ui/real-daemon-run.test.ts, e2e/ui/app-design-files.test.ts, e2e/ui/app-restoration.test.ts, e2e/ui/project-management-flows.test.ts, e2e/ui/entry-configuration-flows.test.ts, e2e/ui/workspace-keyboard-flows.test.ts, e2e/tests/dialog/artifact-consistency.test.ts |
| entry.md | Home / New project 创建路径、左侧导航、连接器入口、提示词模板与资源驱动场景 | e2e/ui/app.test.ts, e2e/ui/entry-configuration-flows.test.ts, e2e/ui/entry-chrome-flows.test.ts, e2e/ui/project-management-flows.test.ts |
| project-management.md | 首页/项目管理、设计系统、项目重命名、删除流程、搜索与视图切换 | e2e/ui/project-management-flows.test.ts |
| workspace.md | 工作区标签、会话、文件流、快速切换器、源码预览与手动编辑模式 | e2e/ui/app.test.ts, e2e/ui/app-design-files.test.ts, e2e/ui/app-manual-edit.test.ts, e2e/ui/app-restoration.test.ts, e2e/ui/workspace-keyboard-flows.test.ts |
| settings.md | API protocol 回归、国际化内容、Integrations Skills,以及无入口组件契约 | e2e/ui/settings-api-protocol.test.ts, e2e/tests/localized-content.test.ts, apps/web/tests/components/SettingsDialog.execution.test.tsx, apps/web/tests/components/SettingsDialog.orbit.test.tsx |
| desktop.md | mac 桌面 shell smoke,以及 mac / Linux 打包产物运行时 smoke | e2e/specs/mac.spec.ts, e2e/specs/linux.spec.ts |
维护规则
- 新增用例时,优先补到最接近的模块文档里,不再维护一个超大的总表。
- 每个场景尽量保持一行,方便 QA 在 PR review 里快速看差异。
- 如果某个场景依赖环境变量、默认跳过,必须在模块文档中明确标注。
- 如果测试被删除、重命名或迁移,文档需要在同一个 PR 里同步更新。
用例分类标准
已自动化
- 已经有稳定的自动化实现。
- 需要写明对应测试文件。
- 如果依赖特殊 gate,例如环境变量,也要一并标注。
自动化候选
- 业务价值明确,未来适合进入自动化。
- 但当前可能受限于环境、成本、稳定性或外部依赖。
- 建议补一行原因,方便后续判断何时转自动化。
手工保留
- 更适合人工验收,不建议短期纳入主自动化套件。
- 常见于主观体验、视觉质感、复杂真实授权、多设备协作等场景。
- 也建议补一行原因,避免以后重复讨论。
当前套件结构
e2e/ui/*.test.ts:保持扁平的浏览器 UI Playwright 回归测试。e2e/specs/下各层级的*.spec.ts:按能力目录组织的长链路核心业务、运行时与平台 smoke 测试。e2e/tests/下各层级的*.test.ts:按热点目录组织的 Vitest 跨层校验与支撑测试。e2e/lib/**:仅放 helper,不放可执行用例入口。