7.3 KiB
7.3 KiB
模型参数配置功能 - 后端功能测试
任务概述
任务编号: 03 任务名称: 后端功能测试 前置任务: 02-后端业务逻辑开发 预计工时: 1小时
任务目标
启动后端服务,使用 Swagger 测试所有接口,确保功能正常。
开发步骤
1. 启动后端服务
1.1 编译项目
# 在项目根目录执行
mvn clean compile
1.2 启动应用
方式一:使用 Maven
mvn spring-boot:run
方式二:使用启动脚本
# Windows
ry.bat
# Linux/Mac
./ry.sh start
1.3 验证启动成功
看到若依登录页面即表示启动成功。
2. 获取测试 Token
2.1 登录获取 Token
请求地址:
POST http://localhost:8080/login/test?username=admin&password=admin123
使用 curl:
curl -X POST "http://localhost:8080/login/test?username=admin&password=admin123"
响应示例:
{
"msg": "操作成功",
"code": 200,
"data": {
"token": "eyJhbGciOiJIUzUxMiJ9..."
}
}
记录 Token: 将返回的 token 值保存,后续测试需要使用。
3. Swagger 接口测试
3.1 访问 Swagger UI
浏览器访问: http://localhost:8080/swagger-ui/index.html
3.2 配置 Authorization
- 点击右上角 "Authorize" 按钮
- 在弹出框中输入:
Bearer <你的token> - 点击 "Authorize" 确认
3.3 测试接口1: 查询模型列表
接口路径: GET /ccdi/modelParam/modelList
测试步骤:
- 在 Swagger UI 中找到 "模型参数配置" 分组
- 点击
GET /ccdi/modelParam/modelList接口 - 点击 "Try it out"
- 参数
projectId留空(默认查询系统参数) - 点击 "Execute"
预期响应:
{
"msg": "操作成功",
"code": 200,
"data": [
{
"modelCode": "LARGE_TRANSACTION",
"modelName": "大额交易模型"
},
{
"modelCode": "SUSPICIOUS_FOREIGN_EXCHANGE",
"modelName": "可疑外汇交易模型"
},
{
"modelCode": "SUSPICIOUS_PART_TIME",
"modelName": "可疑兼职模型"
}
]
}
3.4 测试接口2: 查询模型参数列表
接口路径: GET /ccdi/modelParam/list
测试步骤:
- 点击
GET /ccdi/modelParam/list接口 - 点击 "Try it out"
- 参数填写:
modelCode:LARGE_TRANSACTIONprojectId: 留空
- 点击 "Execute"
预期响应:
{
"msg": "操作成功",
"code": 200,
"data": [
{
"id": 1,
"modelCode": "LARGE_TRANSACTION",
"modelName": "大额交易模型",
"paramCode": "SINGLE_TRANSACTION_AMOUNT",
"paramName": "单笔交易额",
"paramDesc": "单笔超过该金额视为大额交易",
"paramValue": "50000",
"paramUnit": "元",
"sortOrder": 1
},
...
]
}
3.5 测试接口3: 保存参数配置
接口路径: POST /ccdi/modelParam/save
测试步骤:
- 点击
POST /ccdi/modelParam/save接口 - 点击 "Try it out"
- 在 Request body 中填写:
{
"projectId": 0,
"modelCode": "LARGE_TRANSACTION",
"modelName": "大额交易模型",
"params": [
{
"paramCode": "SINGLE_TRANSACTION_AMOUNT",
"paramName": "单笔交易额",
"paramDesc": "单笔超过该金额视为大额交易",
"paramValue": "60000",
"paramUnit": "元",
"sortOrder": 1
},
{
"paramCode": "CUMULATIVE_TRANSACTION_AMOUNT",
"paramName": "累计交易额",
"paramDesc": "年累计交易额超过该金额",
"paramValue": "6000000",
"paramUnit": "元",
"sortOrder": 2
}
]
}
- 点击 "Execute"
预期响应:
{
"msg": "保存成功",
"code": 200
}
3.6 验证数据已更新
再次调用 GET /ccdi/modelParam/list 接口,确认参数值已更新为 60000 和 6000000。
4. 数据库验证
4.1 查询参数数据
-- 查询大额交易模型的参数
SELECT id, model_code, param_name, param_value, update_by, update_time
FROM ccdi_model_param
WHERE model_code = 'LARGE_TRANSACTION'
ORDER BY sort_order;
预期结果:
id | model_code | param_name | param_value | update_by | update_time
---|---------------------|-------------------------|-------------|-----------|------------------
1 | LARGE_TRANSACTION | 单笔交易额 | 60000 | admin | 2026-02-26 10:30:00
2 | LARGE_TRANSACTION | 累计交易额 | 6000000 | admin | 2026-02-26 10:30:00
3 | LARGE_TRANSACTION | 大额存现 | 200000 | NULL | 2026-02-26 09:00:00
4 | LARGE_TRANSACTION | 短时多次存现 | 100000 | NULL | 2026-02-26 09:00:00
5 | LARGE_TRANSACTION | 频繁转账 | 10 | NULL | 2026-02-26 09:00:00
6 | LARGE_TRANSACTION | 转账频率 | 1000000 | NULL | 2026-02-26 09:00:00
验证点:
- ✅ 只有被修改的参数有
update_by和update_time - ✅ 参数值已更新为提交的值
- ✅ 其他未修改的参数保持原值
5. 安全性验证
5.1 验证只能修改阈值
尝试在保存接口中修改其他字段(如 param_name):
{
"projectId": 0,
"modelCode": "LARGE_TRANSACTION",
"modelName": "大额交易模型",
"params": [
{
"paramCode": "SINGLE_TRANSACTION_AMOUNT",
"paramName": "修改后的名称", // 尝试修改名称
"paramValue": "70000",
"paramUnit": "修改后的单位", // 尝试修改单位
"sortOrder": 1
}
]
}
验证数据库:
SELECT param_name, param_unit, param_value
FROM ccdi_model_param
WHERE param_code = 'SINGLE_TRANSACTION_AMOUNT';
预期结果:
- ✅
param_value已更新为 70000 - ✅
param_name仍为 "单笔交易额" (未改变) - ✅
param_unit仍为 "元" (未改变)
测试清单
完成以下测试后,本任务才算完成:
- 后端服务启动成功
- 获取 Token 成功
- Swagger 测试:查询模型列表接口正常
- Swagger 测试:查询参数列表接口正常
- Swagger 测试:保存参数接口正常
- 数据库验证:数据已正确更新
- 安全性验证:只能修改阈值字段
测试报告模板
完成测试后,请填写以下测试报告:
测试报告
测试日期: 2026-02-26 测试人员: ___________ 测试环境:
- 数据库地址: ___________
- 后端地址: http://localhost:8080
测试结果:
| 测试项 | 预期结果 | 实际结果 | 是否通过 |
|---|---|---|---|
| 查询模型列表 | 返回3个模型 | ||
| 查询大额交易参数 | 返回6个参数 | ||
| 保存参数配置 | 返回成功 | ||
| 数据更新验证 | 数据已更新 | ||
| 安全性验证 | 只更新阈值 |
发现问题:
- (如有问题请记录)
结论:
- 通过
- 不通过
注意事项
- 测试顺序: 必须按照测试步骤的顺序执行
- Token 有效期: Token 有效期 30 分钟,过期需重新获取
- 数据库连接: 确保数据库连接配置正确
- 端口占用: 确保 8080 端口未被占用
- 日志查看: 如遇问题,查看后端日志排查
下一步
完成本任务后,进入下一个任务: 04-前端代码开发.md