1
0

chore: 归档测试修复变更

This commit is contained in:
2026-03-03 00:42:46 +08:00
parent c73bd0fedd
commit e31a7e9bed
5 changed files with 187 additions and 0 deletions

View File

@@ -0,0 +1,61 @@
## ADDED Requirements
### Requirement: E2E测试命令执行正常
E2E测试必须能够正确执行命令行工具不应出现模块未找到的错误。
#### Scenario: convert命令执行成功
- **WHEN** 运行 `uv run yaml2pptx.py convert input.yaml output.pptx`
- **THEN** 命令返回码为0输出文件被创建
#### Scenario: check命令执行成功
- **WHEN** 运行 `uv run yaml2pptx.py check input.yaml`
- **THEN** 命令返回码为0验证通过或1验证失败但不出现模块错误
### Requirement: 测试Fixture完整定义
所有测试使用的fixture必须在conftest.py中正确定义。
#### Scenario: fixture依赖可用
- **WHEN** 测试引用sample_template fixture
- **THEN** fixture被正确解析并返回临时模板目录路径
### Requirement: Mock对象配置正确
Mock对象在测试中必须正确配置返回值。
#### Scenario: 表格渲染Mock配置
- **WHEN** 测试渲染表格元素时使用Mock对象
- **THEN** Mock对象支持列宽设置的订阅操作
### Requirement: 模板变量替换功能正常
模板系统必须正确替换所有变量,包括字体属性中的变量。
#### Scenario: 字体属性变量替换
- **WHEN** 模板包含 `{variable_name}` 在font属性中
- **THEN** 变量被正确替换为实际值(需要用引号包裹)
### Requirement: 验证结果格式化输出正确
验证结果必须正确格式化所有类型的消息。
#### Scenario: 提示信息显示
- **WHEN** 验证结果包含INFO级别的问题
- **THEN** 输出中应包含"个提示"文字
### Requirement: HTML渲染器特殊字符转义
HTML渲染器必须正确转义特殊HTML字符。
#### Scenario: &字符转义
- **WHEN** 文本内容包含 `&` 字符
- **THEN** 输出中应包含 `&`
### Requirement: Presentation尺寸值验证
Presentation类必须验证尺寸值的类型防止YAML解析错误。
#### Scenario: 非字符串尺寸值
- **WHEN** YAML中 `size: 16:9`(无引号)
- **THEN** 抛出明确的错误信息
### Requirement: PPTX验证器兼容性
PPTX文件验证器必须兼容不同版本的python-pptx。
#### Scenario: 文本框检测
- **WHEN** 验证PPTX中的文本元素
- **THEN** 通过检查text_frame属性来判断是否是文本框