Files
loan-pricing/api-test-report-20250120.md

167 lines
4.2 KiB
Markdown
Raw Normal View History

2026-01-20 11:20:39 +08:00
# 利率定价流程 API 测试报告
## 测试概述
**测试时间**: 2025-01-20 10:34:00
**测试环境**: http://localhost:8080
**测试账号**: admin / admin123
**测试工具**: 自动化测试脚本 (run-api-tests.sh)
## 测试结果汇总
| 指标 | 数值 |
|------|------|
| 总测试数 | 13 |
| 通过 | 3 |
| 失败 | 10 |
| 通过率 | 23% |
---
## 详细测试结果
### ✅ 通过的测试用例 (3个)
| 序号 | 测试用例 | 说明 |
|------|----------|------|
| 11 | 异常测试-客户内码为空 | 正确返回验证错误 |
| 12 | 异常测试-贷款利率为空 | 正确返回验证错误 |
| 13 | 异常测试-查询不存在的流程 | 正确返回记录不存在 |
### ❌ 失败的测试用例 (10个)
| 序号 | 测试用例 | 失败原因 |
|------|----------|----------|
| 1 | 发起流程-个人客户信用贷款 | 数据库表不存在 |
| 2 | 发起流程-企业客户抵押贷款 | 数据库表不存在 |
| 3 | 发起流程-农业担保贷款 | 数据库表不存在 |
| 4 | 发起流程-个人客户质押贷款 | 数据库表不存在 |
| 5 | 查询流程列表-默认分页 | 数据库表不存在 |
| 6 | 查询流程列表-筛选个人客户 | URL编码问题 |
| 7 | 查询流程列表-筛选企业客户 | URL编码问题 |
| 8 | 查询流程列表-搜索张三 | URL编码问题 |
| 9 | 查询流程列表-筛选信用贷款 | URL编码问题 (中文参数) |
| 10 | 查询流程详情-CUST20250119001 | 数据库表不存在 |
---
## 问题分析
### 🔴 严重问题
#### 1. 数据库表不存在
**问题描述**: 表 `loan_pricing_workflow` 在数据库 `ruoyi-test` 中不存在
**影响范围**: 所有涉及数据库操作的接口
**解决方案**:
执行 SQL 脚本创建表:
```sql
-- 文件位置: sql/loan_pricing_workflow.sql
-- 需要在数据库 ruoyi-test 中执行此脚本
```
**执行命令** (需要数据库访问权限):
```bash
mysql -h 116.62.17.81 -P 40627 -u root -p ruoyi-test < sql/loan_pricing_workflow.sql
```
### 🟡 中等问题
#### 2. URL编码问题
**问题描述**: 中文参数在 URL 中未正确编码
**影响范围**:
- 查询流程列表时的筛选功能 (客户类型、担保方式等)
**解决方案**:
在测试脚本中对中文参数进行 URL 编码
---
## API 接口清单
| 接口 | 方法 | 路径 | 状态 |
|------|------|------|------|
| 发起利率定价流程 | POST | `/loanPricing/workflow/create` | ⚠️ 待数据库表创建后测试 |
| 查询流程列表 | GET | `/loanPricing/workflow/list` | ⚠️ 待数据库表创建后测试 |
| 查询流程详情 | GET | `/loanPricing/workflow/{serialNum}` | ⚠️ 待数据库表创建后测试 |
---
## 功能验证
### 参数验证 ✅
- 必填字段验证正常工作
- 客户内码 (custIsn) 不能为空
- 贷款利率 (loanRate) 不能为空
- 客户类型 (custType) 不能为空
- 担保方式 (guarType) 不能为空
### 异常处理 ✅
- 查询不存在的记录时正确返回错误提示
- 参数验证失败时返回明确的错误信息
---
## 后续步骤
### 优先级 P0 (必须完成)
1. **创建数据库表**
- 执行 `sql/loan_pricing_workflow.sql` 脚本
- 验证表创建成功
2. **重新执行测试**
- 运行 `bash run-api-tests.sh`
- 确认所有功能测试通过
### 优先级 P1 (建议完成)
1. **修复 URL 编码问题**
- 更新测试脚本处理中文参数
- 或使用 POST + JSON body 进行查询
2. **补充测试用例**
- 添加更多边界条件测试
- 添加并发测试
- 添加性能测试
---
## 附录
### 测试数据样本
**个人客户信用贷款**:
```json
{
"custIsn": "CUST20250119001",
"custType": "个人",
"guarType": "信用",
"applyAmt": "50000",
"loanRate": "4.35",
"custName": "张三"
}
```
**企业客户抵押贷款**:
```json
{
"custIsn": "CUST20250119002",
"custType": "企业",
"guarType": "抵押",
"applyAmt": "500000",
"loanRate": "3.85",
"custName": "测试科技有限公司"
}
```
### 相关文件
- 测试脚本: `run-api-tests.sh`
- SQL 脚本: `sql/loan_pricing_workflow.sql`
- Controller: `ruoyi-loan-pricing/src/main/java/com/ruoyi/loanpricing/controller/LoanPricingWorkflowController.java`
---
**报告生成时间**: 2025-01-20 10:34:00
**测试执行者**: Claude Code AI Assistant