# 测试计划 - 合作成本表和店内支出表 ## 📋 测试范围 1. **合作成本表** - CRUD操作(创建、查询、更新、删除) - Excel导入功能 - Excel导出功能 2. **店内支出表** - CRUD操作(创建、查询、更新、删除) - Excel导入功能 - Excel导出功能 3. **报销表导出功能** - 导出本月已审核通过的报销表明细 --- ## 🧪 测试步骤 ### 第一阶段:基础功能测试 #### 1. 合作成本表 - CRUD测试 **1.1 创建合作成本记录** ```bash POST /api/Extend/LqCooperationCost Content-Type: application/json { "storeId": "门店ID", "storeName": "测试门店", "year": 2025, "month": "202501", "totalAmount": 5000.00, "remarks": "测试数据" } ``` **预期结果**:创建成功,返回记录ID **1.2 查询合作成本列表** ```bash GET /api/Extend/LqCooperationCost?currentPage=1&pageSize=10&storeId=门店ID ``` **预期结果**:返回分页列表,包含刚创建的记录 **1.3 查询合作成本详情** ```bash GET /api/Extend/LqCooperationCost/{id} ``` **预期结果**:返回记录详情 **1.4 更新合作成本记录** ```bash PUT /api/Extend/LqCooperationCost/{id} Content-Type: application/json { "id": "记录ID", "storeId": "门店ID", "storeName": "测试门店", "year": 2025, "month": "202501", "totalAmount": 6000.00, "remarks": "更新后的测试数据" } ``` **预期结果**:更新成功 **1.5 删除合作成本记录** ```bash DELETE /api/Extend/LqCooperationCost/{id} ``` **预期结果**:逻辑删除成功(IsEffective = 0) --- #### 2. 店内支出表 - CRUD测试 **2.1 创建店内支出记录** ```bash POST /api/Extend/LqStoreExpense Content-Type: application/json { "storeId": "门店ID", "storeName": "测试门店", "expenseCategoryId": "", "expenseCategoryName": "办公用品", "expenseDate": "2025-01-15T00:00:00", "unitPrice": 10.50, "quantity": 5, "amount": 52.50, "memo": "测试支出", "attachment": [], "relatedReimbursementId": "", "relatedPurchaseRecordId": "" } ``` **预期结果**:创建成功 **2.2 查询店内支出列表** ```bash GET /api/Extend/LqStoreExpense?currentPage=1&pageSize=10&storeId=门店ID ``` **预期结果**:返回分页列表 **2.3 查询店内支出详情** ```bash GET /api/Extend/LqStoreExpense/{id} ``` **预期结果**:返回记录详情 **2.4 更新店内支出记录** ```bash PUT /api/Extend/LqStoreExpense/{id} Content-Type: application/json { "id": "记录ID", "storeId": "门店ID", "storeName": "测试门店", "expenseCategoryId": "", "expenseCategoryName": "水电费", "expenseDate": "2025-01-20T00:00:00", "unitPrice": 0, "quantity": 0, "amount": 500.00, "memo": "更新后的测试支出", "attachment": [], "relatedReimbursementId": "", "relatedPurchaseRecordId": "" } ``` **预期结果**:更新成功 **2.5 删除店内支出记录** ```bash DELETE /api/Extend/LqStoreExpense/{id} ``` **预期结果**:逻辑删除成功 --- ### 第二阶段:Excel导入测试 #### 3. 合作成本表 - Excel导入测试 **3.1 准备Excel文件** - 按照 `Excel导入格式说明.md` 中的格式创建Excel文件 - 包含至少3条测试数据 - 包含1条错误数据(用于测试错误处理) **3.2 执行导入** ```bash POST /api/Extend/LqCooperationCost/Actions/Import Content-Type: multipart/form-data file: Excel文件 ``` **预期结果**: - 成功导入有效数据 - 错误数据被跳过并返回错误信息 - 返回导入结果统计 **3.3 验证导入数据** ```bash GET /api/Extend/LqCooperationCost?storeId=门店ID&year=2025&month=202501 ``` **预期结果**:查询到导入的数据 --- #### 4. 店内支出表 - Excel导入测试 **4.1 准备Excel文件** - 按照 `Excel导入格式说明.md` 中的格式创建Excel文件 - 包含至少3条测试数据 - 包含1条错误数据(用于测试错误处理) **4.2 执行导入** ```bash POST /api/Extend/LqStoreExpense/Actions/Import Content-Type: multipart/form-data file: Excel文件 ``` **预期结果**: - 成功导入有效数据 - 错误数据被跳过并返回错误信息 - 返回导入结果统计 **4.3 验证导入数据** ```bash GET /api/Extend/LqStoreExpense?storeId=门店ID ``` **预期结果**:查询到导入的数据 --- ### 第三阶段:Excel导出测试 #### 5. 合作成本表 - Excel导出测试 **5.1 执行导出** ```bash GET /api/Extend/LqCooperationCost/Actions/Export?dataType=1&storeId=门店ID&year=2025&month=202501 ``` **预期结果**: - 返回Excel文件下载链接 - 下载的文件包含所有查询到的数据 - Excel格式正确 --- #### 6. 店内支出表 - Excel导出测试 **6.1 执行导出** ```bash GET /api/Extend/LqStoreExpense/Actions/Export?dataType=1&storeId=门店ID ``` **预期结果**: - 返回Excel文件下载链接 - 下载的文件包含所有查询到的数据 - Excel格式正确 --- ### 第四阶段:报销表导出测试 #### 7. 报销表导出测试 **7.1 准备测试数据** - 确保有至少1条已审核通过的报销申请(本月) - 该报销申请关联了购买记录 **7.2 执行导出** ```bash GET /api/Extend/LqReimbursementApplication/Actions/ExportApprovedDetails?year=2025&month=01 ``` **预期结果**: - 返回Excel文件下载链接 - 下载的文件包含: - 报销申请基本信息(申请ID、申请人、门店、申请时间、申请金额) - 关联的购买记录明细(每条购买记录一行) - Excel格式正确 --- ## ✅ 测试检查清单 ### 合作成本表 - [ ] 创建记录成功 - [ ] 查询列表成功(分页) - [ ] 查询详情成功 - [ ] 更新记录成功 - [ ] 删除记录成功(逻辑删除) - [ ] Excel导入成功(有效数据) - [ ] Excel导入错误处理正确(无效数据被跳过) - [ ] Excel导出成功 - [ ] 导出文件格式正确 ### 店内支出表 - [ ] 创建记录成功 - [ ] 查询列表成功(分页) - [ ] 查询详情成功 - [ ] 更新记录成功 - [ ] 删除记录成功(逻辑删除) - [ ] Excel导入成功(有效数据) - [ ] Excel导入错误处理正确(无效数据被跳过) - [ ] Excel导出成功 - [ ] 导出文件格式正确 ### 报销表导出 - [ ] 导出本月已审核通过的报销申请 - [ ] 包含购买记录明细 - [ ] 包含门店、金额等信息 - [ ] Excel格式正确 --- ## 🐛 常见问题处理 ### 1. 导入失败 - 门店ID不存在 **问题**:导入时提示门店ID不存在 **解决**:检查门店ID是否正确,可以通过门店列表接口获取正确的门店ID ### 2. 导入失败 - 月份格式错误 **问题**:提示月份格式错误 **解决**:月份必须是YYYYMM格式(6位字符串),如:202501 ### 3. 导入失败 - 日期格式错误 **问题**:店内支出表导入时提示日期格式错误 **解决**:日期必须使用标准格式,推荐:YYYY-MM-DD,如:2025-01-15 ### 4. 导入失败 - 重复数据 **问题**:合作成本表导入时提示记录已存在 **解决**:系统会检查相同门店、年份、月份是否已存在,如果存在会跳过该条记录 --- ## 📝 测试数据准备 ### 需要准备的数据 1. **门店ID**:至少2个有效的门店ID(用于测试) 2. **Excel文件**: - 合作成本表导入文件(至少3条有效数据 + 1条错误数据) - 店内支出表导入文件(至少3条有效数据 + 1条错误数据) 3. **报销申请**:至少1条本月已审核通过的报销申请(关联购买记录) ### 获取门店ID的方法 ```bash GET /api/Extend/LqMdxx/Selector ``` 返回结果中包含门店ID和名称。 --- ## 🚀 开始测试 请按照以下步骤进行: 1. **准备Excel文件**:根据 `Excel导入格式说明.md` 创建Excel文件 2. **填写测试数据**:我会在您创建的Excel文件中填写测试数据 3. **执行测试**:按照测试步骤逐一执行测试 4. **验证结果**:检查每个测试点的预期结果 准备好Excel文件后,请告诉我,我会填写测试数据并开始测试。