49 lines
1.6 KiB
Markdown
49 lines
1.6 KiB
Markdown
# 自然语言转 CAN 控制指令组合测试说明
|
|
|
|
- 生成日期:2026-08-24
|
|
- 总用例数:**1133**
|
|
- 执行方式:本地规则、`dry_run`,不发送真实 CAN 帧
|
|
- 完整逐条清单:`docs/testing/自然语言转CAN组合测试用例.csv`
|
|
- 机器可执行数据:`tests/fixtures/natural_can_command_combination_suite.json`
|
|
|
|
## 覆盖数量
|
|
|
|
| 用例类型 | 数量 |
|
|
| --- | ---: |
|
|
| `atomic` | 177 |
|
|
| `cross_can0_can1` | 120 |
|
|
| `four_command` | 126 |
|
|
| `multi_command_scene` | 10 |
|
|
| `pairwise` | 300 |
|
|
| `pairwise_separator_variant` | 300 |
|
|
| `safety_rejection` | 16 |
|
|
| `three_command` | 84 |
|
|
|
|
| 通道 | 数量 |
|
|
| --- | ---: |
|
|
| `can0` | 13 |
|
|
| `can0+can1` | 205 |
|
|
| `can1` | 899 |
|
|
| `none` | 16 |
|
|
|
|
## 组合策略
|
|
|
|
1. 原子用例覆盖 CAN1 门锁、车窗、空调、风口、主驾座椅、灯光、遮阳帘,以及 CAN0 副驾座椅。
|
|
2. 两两组合从 25 个互不冲突的控制槽中取组合,同时覆盖中文逗号和分号分隔形式。
|
|
3. 三指令和四指令组合覆盖 CAN0/CAN1、座椅、空调、灯光、车窗、门锁、风口与遮阳帘的交叉。
|
|
4. 跨通道组合明确检查副驾座椅留在 CAN0、主驾和车身控制留在 CAN1。
|
|
5. 多指令场景覆盖观影、双座椅、全温区空调、泊车关闭、车窗与遮阳帘等常用场景。
|
|
6. 安全用例要求白名单外目标、档位、能力和矛盾指令不生成 CAN 控制流。
|
|
|
|
## 执行
|
|
|
|
```bash
|
|
PYTHONPATH=src:domains/seat/src .venv/bin/python -m pytest -q tests/integration/test_natural_can_command_combinations.py
|
|
```
|
|
|
|
重新生成清单:
|
|
|
|
```bash
|
|
.venv/bin/python tools/generate_natural_can_command_suite.py
|
|
```
|