feat: 增强桌面启动失败提示与测试覆盖
This commit is contained in:
@@ -166,6 +166,34 @@
|
||||
|
||||
测试 workflow 中的各测试步骤 SHALL 使用隔离的资源,不干扰主环境。
|
||||
|
||||
### Requirement: Desktop 原生 UI 测试不依赖真实图形环境
|
||||
|
||||
CI 测试门禁 SHALL 允许验证 desktop 启动失败报告的 UI 无关逻辑,但 SHALL NOT 要求 GitHub Actions runner 或本地 CI 环境具备真实系统通知、模态弹窗或托盘可见性。
|
||||
|
||||
#### Scenario: CI 运行 desktop 启动失败测试
|
||||
|
||||
- **WHEN** `check` job 执行 `make test`
|
||||
- **THEN** desktop 专属测试 SHALL 可以覆盖启动失败分类、提示通道选择、fallback 顺序和托盘 ready/timeout 逻辑
|
||||
- **THEN** 测试 SHALL 使用 mock、fake runner 或接口注入验证调用意图
|
||||
|
||||
#### Scenario: CI 不验证真实原生 UI 展示
|
||||
|
||||
- **WHEN** `check` job 在 Linux、macOS 或 Windows runner 上运行
|
||||
- **THEN** 测试 SHALL NOT 要求真实系统通知可见
|
||||
- **THEN** 测试 SHALL NOT 要求真实模态弹窗被显示或被人工点击
|
||||
- **THEN** 测试 SHALL NOT 要求真实托盘图标可见
|
||||
- **THEN** runner 的通知权限、勿扰模式、DBus 状态或桌面会话差异 SHALL NOT 导致正常 CI 失败
|
||||
|
||||
#### Scenario: Linux CI 系统依赖边界
|
||||
|
||||
- **WHEN** Linux `check` job 安装 desktop 构建和测试所需系统依赖
|
||||
- **THEN** 该依赖安装 SHALL NOT 被解释为需要在 CI 中验证真实 Linux 通知或弹窗展示
|
||||
- **THEN** Linux 通知/弹窗命令 SHALL 在测试中通过 fake runner 覆盖
|
||||
|
||||
### Requirement: 测试 workflow 资源隔离
|
||||
|
||||
测试 workflow 中的各测试步骤 SHALL 使用隔离的资源,不干扰主环境。
|
||||
|
||||
#### Scenario: E2E 临时资源隔离
|
||||
|
||||
- **WHEN** E2E 测试运行
|
||||
|
||||
Reference in New Issue
Block a user