提交 7c741a75 authored 作者: 陈泽健's avatar 陈泽健

feat(security-test): 添加ERP任务自动创建功能实现测试闭环

- 更新任务类型配置从开发任务改为后端开发(type_id: 3)
- 修改默认责任人从陈泽键(441)改为李立键(101)
- 将默认期望工时从14小时调整为21小时
- 在技能描述中添加自动创建ERP任务实现闭环的功能说明
- 新增完整的ERP任务创建阶段文档包含自动执行流程
- 添加任务创建失败处理和手动执行选项的详细说明
- 更新测试结果摘要阶段包含ERP任务ID和查看链接信息
- 完善整体流程确认包含自动创建ERP任务的闭环标志
上级 387ab3eb
--- ---
name: AQCS-XTYPT name: AQCS-XTYPT
description: 新统一平台接口安全测试 - 执行OWASP API Top 10全量测试、历史漏洞回归、华为红线检查,生成报告并上传网盘 description: 新统一平台接口安全测试 - 执行OWASP API Top 10全量测试、历史漏洞回归、华为红线检查,生成报告并上传网盘,自动创建ERP任务闭环
--- ---
新统一平台接口安全测试自动化执行,严格按照PRD需求文档执行全部测试流程。 新统一平台接口安全测试自动化执行,严格按照PRD需求文档执行全部测试流程,并自动创建ERP任务实现完整闭环
## Usage ## Usage
...@@ -35,6 +35,7 @@ description: 新统一平台接口安全测试 - 执行OWASP API Top 10全量测 ...@@ -35,6 +35,7 @@ description: 新统一平台接口安全测试 - 执行OWASP API Top 10全量测
- 华为安全红线合规检查(22项 HW-001~HW-022 + 5项伙伴红线) - 华为安全红线合规检查(22项 HW-001~HW-022 + 5项伙伴红线)
- 生成完整安全测试报告(Markdown格式) - 生成完整安全测试报告(Markdown格式)
- 报告自动上传网盘 - 报告自动上传网盘
- **自动创建ERP任务**,实现测试→报告→任务的完整闭环
## 关键配置信息(来自config.yaml) ## 关键配置信息(来自config.yaml)
...@@ -147,17 +148,82 @@ description: 新统一平台接口安全测试 - 执行OWASP API Top 10全量测 ...@@ -147,17 +148,82 @@ description: 新统一平台接口安全测试 - 执行OWASP API Top 10全量测
- 工具会自动上传报告到 `\\192.168.9.9\deploy\18其它系统\安全测试\04新统一平台-安全报告\` - 工具会自动上传报告到 `\\192.168.9.9\deploy\18其它系统\安全测试\04新统一平台-安全报告\`
- 如果上传失败,手动拷贝报告到网盘目录 - 如果上传失败,手动拷贝报告到网盘目录
### 阶段4: 输出测试结果摘要 ### 阶段4: ERP任务创建(闭环)✅ 自动执行
**说明**:此阶段在执行 `python run_all.py`**自动执行**,无需手动操作。
1. **自动执行时机**
- 在报告生成和网盘上传完成后自动触发
- 仅当 `config.yaml``erp.enabled: true` 时执行
2. **ERP配置要求**
- 确认 `config.yaml``erp.enabled: true`
- 确认 ERP API 地址和密钥配置正确
- 确认任务配置(类型、责任人、创建人等)
3. **自动任务创建流程**
- ✅ 系统自动读取最新的测试报告
- ✅ 解析报告内容,提取测试摘要和漏洞统计
- ✅ 获取ERP基础数据(任务类型、状态、人员列表)
- ✅ 搜索关联需求(默认:新统一平台公司内部安全测试扫描及修复验证)
- ✅ 自动填充任务信息:
- 任务名称:`{IP}接口安全测试及漏洞修复_{日期}`
- 任务类型:后端开发(type_id: 3)
- 任务状态:指派中(status_id: 1)
- 紧急程度:根据漏洞等级自动计算(高危→5级,中危→4级)
- 责任人:李立键(101)
- 创建人:陈泽键(441)
- 期望工时:21小时
- 截止时间:7天后
- ✅ 生成HTML格式的任务描述(含测试概览、漏洞统计、修复建议)
- ✅ 调用ERP API创建任务
4. **验证任务创建结果**
- ✅ 检查控制台输出的任务ID和任务名称
- ✅ 查看日志文件确认创建成功:`logs/security_test_*.log`
- ✅ 登录ERP系统验证任务是否创建成功
- ✅ 确认任务类型为"后端开发"
- ✅ 确认责任人和创建人正确
- ✅ 确认任务描述包含完整测试信息
5. **任务创建失败处理**
- ❌ 如果遇到 "Incorrect string value" 错误 → 已修复(移除了emoji字符)
- ❌ 如果遇到网络超时 → 检查ERP API地址是否可访问
- ❌ 如果遇到认证失败 → 检查API密钥是否正确
- 📝 详细的错误日志记录在 `logs/security_test_*.log` 文件中
6. **手动执行ERP任务创建**(可选):
```bash
cd AuxiliaryTool/ScriptTool/ApiSecurityTest
python test_erp_creation.py
```
此命令会使用最新的测试报告创建ERP任务,通常用于调试或重试。
### 阶段5: 输出测试结果摘要
1. **向用户展示测试结果概要**,包括: 1. **向用户展示测试结果概要**,包括:
- 测试目标与时间 - ✅ 测试目标与时间
- 漏洞统计(高危/中危/低危/信息类数量) - ✅ 漏洞统计(高危/中危/低危/信息类数量)
- 关键发现(高危漏洞列表) - ✅ 关键发现(高危漏洞列表)
- 报告文件路径(本地 + 网盘) - ✅ 报告文件路径(本地 + 网盘)
- ✅ **ERP任务ID和查看链接**(新增)
2. **如果发现高危漏洞**,额外提醒: 2. **如果发现高危漏洞**,额外提醒:
- 列出每个高危漏洞的名称和影响接口 - 🔴 列出每个高危漏洞的名称和影响接口
- 建议优先修复 - ⚠️ 建议优先修复
- 📋 ERP任务已自动创建,责任人会在系统中收到通知
3. **完整闭环流程确认**
- ✅ 阶段1: 环境检查与准备
- ✅ 阶段2: 执行全量安全测试
- ✅ 阶段3: 报告生成与上传网盘
- ✅ 阶段4: **自动创建ERP任务**(闭环)
- ✅ 阶段5: 输出测试结果摘要
**流程完成标志**
```
测试执行完毕 ──► 总报告已生成 ──► 报告已上传网盘 ──► ERP任务已创建 ──► 闭环完成 ✅
```
## 单模块测试模式 ## 单模块测试模式
......
...@@ -98,3 +98,7 @@ __pycache__/ ...@@ -98,3 +98,7 @@ __pycache__/
# KKfile 部署包和镜像文件(体积过大,不提交) # KKfile 部署包和镜像文件(体积过大,不提交)
/AuxiliaryTool/ScriptTool/kkfile_https调试脚本/kkfile_https_deploy_package*.tar.gz /AuxiliaryTool/ScriptTool/kkfile_https调试脚本/kkfile_https_deploy_package*.tar.gz
/AuxiliaryTool/ScriptTool/kkfile_https调试脚本/镜像文件/ /AuxiliaryTool/ScriptTool/kkfile_https调试脚本/镜像文件/
/AuxiliaryTool/FunctionalTestReportGeneration/temp/erp_upload_html/report_20260617_175347.html
/AuxiliaryTool/FunctionalTestReportGeneration/temp/erp_upload_html/report_20260617_200435.html
/AuxiliaryTool/FunctionalTestReportGeneration/temp/erp_upload_html/report_20260618_094828.html
/AuxiliaryTool/FunctionalTestReportGeneration/temp/erp_upload_html/report_20260618_102338.html
...@@ -150,17 +150,17 @@ erp: ...@@ -150,17 +150,17 @@ erp:
# 任务配置 # 任务配置
task: task:
# 默认任务类型:1-开发任务 2-测试任务 3-设计任务 4-部署任务 5-文档任务 6-维护任务 7-研究任务 8-会议沟通 9-售前支持 10-售后支持 # 默认任务类型:1-UI设计 2-前端开发 3-后端开发 4-测试验证 5-协调协助
type_id: 1 type_id: 3
# 默认任务状态:1-新建 2-进行中 3-已解决 4-完成确认中 10-已完成 # 默认任务状态:1-新建 2-进行中 3-已解决 4-完成确认中 10-已完成
status_id: 1 status_id: 1
# 默认紧急程度:1-每日观察 2-非常紧急 3-紧急处理 4-常规处理 5-迭代优化 # 默认紧急程度:1-每日观察 2-非常紧急 3-紧急处理 4-常规处理 5-迭代优化
level: 4 level: 4
# 默认期望工时(小时) # 默认期望工时(小时)
excepthour: 14 excepthour: 21
# 默认责任人ID,陈泽键(441) # 默认责任人ID,李立键(101)
user_id: 441 user_id: 101
# 默认创建人ID # 默认创建人ID,陈泽键(441)
createuser_id: 441 createuser_id: 441
# 任务截止天数(当前时间+N天) # 任务截止天数(当前时间+N天)
deadline_days: 7 deadline_days: 7
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论