44 lines
3.1 KiB
Markdown
44 lines
3.1 KiB
Markdown
# T2G 座椅前端能力测试集
|
||
|
||
本测试集验证从前端自然语言输入、意图计划、`FunctionConfig`、CAN 编译到执行反馈展示的完整链路。机器自动化测试固定使用 `dry_run`,不会连接台架;真实台架部分必须由现场人员逐条执行并目视确认。
|
||
|
||
可执行用例源位于 `tests/fixtures/seat_frontend_capabilities.json`,HTTP 回归测试位于 `tests/e2e/test_seat_web_api.py`。
|
||
|
||
## 覆盖范围
|
||
|
||
| 用例 | 前端输入 | 重点验证 |
|
||
| --- | --- | --- |
|
||
| THERM-01/02 | 副驾加热3档、关闭加热 | 加热开关、档位和 `0x4FA` 回读 |
|
||
| THERM-03/04 | 副驾通风2档、关闭通风 | 通风开关、档位和 `0x4FA` 回读 |
|
||
| MOTION-01 | 副驾水平位置25% | M0、`0x302≈2500`、COMPLETE/OK |
|
||
| MOTION-02 | 副驾坐盆倾角35% | M1、`0x302≈3500`、COMPLETE/OK |
|
||
| MOTION-03 | 副驾靠背130度 | M2、角度标定和真实位置反馈 |
|
||
| MOTION-04 | 副驾腿托145度 | M3、角度标定和真实位置反馈 |
|
||
| COMBINED-01 | 一句话同时设置热管理和四轴 | 多操作编排、逐项反馈与失败传播 |
|
||
| DEFAULT-01 | 未指定座位的通风请求 | 自动使用副驾,不生成主驾操作 |
|
||
| SAFE-01 | 显式主驾通风请求 | 返回仅支持副驾,不得重定向或发 CAN |
|
||
| SAFE-02 | 独立腿托伸缩 | 当前台架不支持,打开CAN前拒绝 |
|
||
| SAFE-03 | 生产默认配置下错误/缺失授权令牌 | HTTP 403,CAN 不得打开;本地显式设置 `COGNITIVE_AGENT_HARDWARE_APPROVAL_TOKEN_REQUIRED=false` 时不适用 |
|
||
| RECOVERY-01 | 未烧写或固件不匹配后请求加热 | 自动烧写、重新验证、继续原动作 |
|
||
|
||
## 自动化执行
|
||
|
||
```powershell
|
||
$env:PYTHONDONTWRITEBYTECODE='1'
|
||
$env:PYTHONPATH='src;domains/seat/src'
|
||
python -m unittest tests.e2e.test_seat_web_api
|
||
```
|
||
|
||
自动测试会逐条向 `/api/requests` 提交测试集中的自然语言输入,验证所有六项真实台架能力均生成副驾目标和正确参数,并确认执行模式保持为 `dry_run`。领域集成测试另行验证未指定座位时默认副驾,以及本地解析和模型输出中的显式主驾目标都被拒绝。
|
||
|
||
## 真实台架执行顺序
|
||
|
||
1. 固定座椅、清空行程、准备急停和限流电源;保持 `COGNITIVE_AGENT_SEAT_AUTO_HOME_ENABLED=false`。
|
||
2. 先执行 RECOVERY-01。可使用未烧写控制器,或仅在确认允许覆盖当前固件后进行;前端结果必须显示 `programmed_this_request=true`、`firmware_verified=true`,随后才出现动作反馈。
|
||
3. 依次执行 THERM-01~04,确认开、关和档位回读。
|
||
4. 让四轴处于有效位置后,依次执行 MOTION-01~04。每次只观察一个物理轴,映射或方向错误立即急停。
|
||
5. 单项全部通过后再执行 COMBINED-01;逐项核对 ACK、TaskState、位置、Hall、电流诊断及最终报告。
|
||
6. 最后执行 SAFE-01~03,确认所有安全用例均未产生 CAN 动作。
|
||
|
||
普通一句话请求绝不触发全行程标定。若 `PositionValid=0`,保持自动归零关闭时动作应安全失败;只有确认台架无遮挡且允许回最近端后,才能单独启用已知量程归零。
|