152 lines
4.7 KiB
Markdown
152 lines
4.7 KiB
Markdown
# 严格等级功能实现总结
|
||
|
||
## 🎯 实现的功能
|
||
|
||
根据您的需求,我们成功实现了基于严格等级(strictness-level)将PDF报告中的测试用例分为两部分的功能:
|
||
|
||
### 1. 必须的测试用例
|
||
- 严重性等于或高于设定级别的用例
|
||
- 这些用例的失败会影响API端点的最终测试结果
|
||
- 在PDF中用浅蓝色背景突出显示
|
||
|
||
### 2. 非必须的测试用例
|
||
- 严重性低于设定级别的用例
|
||
- 这些用例的失败不会影响API端点的最终测试结果
|
||
- 在PDF中用浅灰色背景显示
|
||
|
||
## 🔧 技术实现
|
||
|
||
### 严重性等级映射
|
||
```python
|
||
severity_levels = {
|
||
'CRITICAL': 5,
|
||
'HIGH': 4,
|
||
'MEDIUM': 3,
|
||
'LOW': 2,
|
||
'INFO': 1
|
||
}
|
||
```
|
||
|
||
### 用例分类逻辑
|
||
```python
|
||
# 根据严格等级判断是否为必须用例
|
||
is_required = tc_severity_value >= strictness_value
|
||
```
|
||
|
||
### PDF报告结构
|
||
1. **严格等级说明**:显示当前设定的严格等级
|
||
2. **必须的测试用例表格**:浅蓝色背景,影响测试结果
|
||
3. **非必须的测试用例表格**:浅灰色背景,不影响测试结果
|
||
4. **详细统计信息**:包含必须/非必须用例的数量分布
|
||
|
||
## 📊 摘要内容优化
|
||
|
||
### 修改前
|
||
```
|
||
共测试 X 个API端点,执行 Y 个测试用例,
|
||
其中 Z 个通过,W 个失败,测试用例成功率为 P%。
|
||
```
|
||
|
||
### 修改后
|
||
```
|
||
共测试 X 个API端点,其中 A 个通过,B 个失败,端点成功率为 Q%。
|
||
执行 Y 个测试用例,其中 Z 个通过,W 个失败,测试用例成功率为 P%。
|
||
```
|
||
|
||
## 🧪 测试验证结果
|
||
|
||
使用不同严格等级测试,结果如下:
|
||
|
||
| 严格等级 | 必须用例数 | 非必须用例数 | 总用例数 | 说明 |
|
||
|----------|------------|--------------|----------|------|
|
||
| CRITICAL | 2个 | 8个 | 10个 | 只有CRITICAL级别用例为必须 |
|
||
| HIGH | 6个 | 4个 | 10个 | CRITICAL+HIGH级别用例为必须 |
|
||
| MEDIUM | 8个 | 2个 | 10个 | CRITICAL+HIGH+MEDIUM级别用例为必须 |
|
||
| LOW | 9个 | 1个 | 10个 | CRITICAL+HIGH+MEDIUM+LOW级别用例为必须 |
|
||
|
||
## 📋 PDF报告新增内容
|
||
|
||
### 1. 严格等级说明
|
||
```
|
||
当前严格等级:HIGH。根据此等级,测试用例被分为必须执行和非必须执行两部分。
|
||
```
|
||
|
||
### 2. 分离的测试用例表格
|
||
|
||
#### 必须的测试用例(影响测试结果)
|
||
- 浅蓝色表头背景
|
||
- 包含所有严重性≥设定级别的用例
|
||
- 包括Endpoint用例和Stage用例
|
||
|
||
#### 非必须的测试用例(不影响测试结果)
|
||
- 浅灰色表头背景
|
||
- 包含所有严重性<设定级别的用例
|
||
|
||
### 3. 详细统计信息
|
||
```
|
||
测试用例统计:
|
||
总计 10 个用例,其中端点用例 8 个,阶段用例 2 个。
|
||
必须用例 6 个,非必须用例 4 个。
|
||
严格等级:HIGH(4级及以上为必须)。
|
||
```
|
||
|
||
## 🚀 使用方法
|
||
|
||
### 命令行方式
|
||
```bash
|
||
# 使用CRITICAL级别(默认)
|
||
python run_api_tests.py --base-url http://localhost:5001 --strictness-level CRITICAL
|
||
|
||
# 使用HIGH级别
|
||
python run_api_tests.py --base-url http://localhost:5001 --strictness-level HIGH
|
||
|
||
# 使用MEDIUM级别
|
||
python run_api_tests.py --base-url http://localhost:5001 --strictness-level MEDIUM
|
||
```
|
||
|
||
### Web界面方式
|
||
1. 访问 http://localhost:5050
|
||
2. 在测试配置中选择严格等级
|
||
3. 上传API规范文件并执行测试
|
||
4. 下载PDF报告查看分离的用例列表
|
||
|
||
## 🎨 视觉区分
|
||
|
||
### 必须用例表格
|
||
- **表头背景**:浅蓝色 (`colors.lightblue`)
|
||
- **标题**:必须的测试用例(影响测试结果)
|
||
- **含义**:这些用例的失败会导致端点被标记为失败
|
||
|
||
### 非必须用例表格
|
||
- **表头背景**:浅灰色 (`colors.lightgrey`)
|
||
- **标题**:非必须的测试用例(不影响测试结果)
|
||
- **含义**:这些用例的失败不会影响端点的最终状态
|
||
|
||
## 📈 实际应用场景
|
||
|
||
### 1. 严格测试(CRITICAL级别)
|
||
- 只有最关键的用例失败才影响结果
|
||
- 适用于快速验证核心功能
|
||
- 大部分用例为非必须,提供额外信息
|
||
|
||
### 2. 标准测试(HIGH级别)
|
||
- 关键和重要用例失败都影响结果
|
||
- 适用于常规的合规性测试
|
||
- 平衡了严格性和全面性
|
||
|
||
### 3. 全面测试(MEDIUM/LOW级别)
|
||
- 大部分用例失败都影响结果
|
||
- 适用于详细的质量检查
|
||
- 确保高质量标准
|
||
|
||
## ✅ 完成的改进
|
||
|
||
1. ✅ **根据严格等级分离用例**:必须 vs 非必须
|
||
2. ✅ **视觉区分**:不同颜色的表格背景
|
||
3. ✅ **详细统计**:显示各类用例的数量分布
|
||
4. ✅ **摘要优化**:添加端点通过数量数据
|
||
5. ✅ **灵活配置**:支持4个严格等级选择
|
||
6. ✅ **完整测试**:验证所有级别的正确性
|
||
|
||
现在您的PDF测试报告能够根据严格等级智能地将测试用例分为必须和非必须两部分,并提供清晰的视觉区分和详细的统计信息!
|