接口测试准备说明.md 4.36 KB

报销流程配置接口测试准备说明

当前状态

代码已完成:所有接口代码已实现并通过编译检查 ✅ 测试脚本已创建test_reimbursement_workflow_config_api.py测试文档已创建测试流程配置接口说明.md

需要执行的步骤

1. 确保数据库表已创建

执行 SQL 文件创建数据库表:

# 执行 sql/创建报销流程配置表.sql
mysql -u用户名 -p密码 数据库名 < sql/创建报销流程配置表.sql

或手动执行:

-- 查看 sql/创建报销流程配置表.sql 文件内容并执行

2. 启动后端服务

# 启动后端服务,确保运行在 http://localhost:2011
# 具体启动命令根据项目配置而定

3. 安装测试依赖(如果需要)

# 如果需要使用 Python 测试脚本,安装 requests 模块
pip3 install requests

# 或者使用用户级安装
pip3 install --user requests

4. 运行测试

方式1:使用 Python 测试脚本

python3 test_reimbursement_workflow_config_api.py

方式2:使用 Postman 或类似工具

  • 导入测试说明文档中的 curl 命令
  • 按顺序测试每个接口

方式3:使用 Swagger UI

  • 访问 http://localhost:2011/swagger
  • 找到 LqReimbursementWorkflowConfig 相关的接口
  • 逐个测试

接口列表(按测试顺序)

✅ 1. GET /api/Extend/LqReimbursementWorkflowConfig/Actions/GetEnabledList

  • 最简单,先测试这个
  • 不需要参数
  • 返回启用的流程列表

✅ 2. GET /api/Extend/LqReimbursementWorkflowConfig

  • 测试分页和筛选
  • 参数:currentPage=1&pageSize=20&keyword=测试
  • 返回分页列表

✅ 3. POST /api/Extend/LqReimbursementWorkflowConfig

  • 创建新流程
  • 测试正常创建
  • 测试参数验证(空名称、空节点列表、节点顺序不连续等)

✅ 4. GET /api/Extend/LqReimbursementWorkflowConfig/{id}

  • 使用步骤3创建的ID
  • 验证返回的节点信息完整

✅ 5. PUT /api/Extend/LqReimbursementWorkflowConfig/{id}

  • 使用步骤3创建的ID
  • 测试更新功能
  • 验证节点数量变化
  • 验证数据一致性

快速验证清单

在启动服务后,按以下顺序快速验证:

  • [ ] 服务能正常启动,无编译错误
  • [ ] 登录接口可以正常获取Token
  • [ ] 获取启用的流程列表返回空数组(或已有数据)
  • [ ] 创建流程配置成功,返回流程ID
  • [ ] 获取流程详细信息返回完整节点信息
  • [ ] 更新流程配置成功
  • [ ] 更新后查询,数据已正确更新
  • [ ] 参数验证正常工作(空名称、空节点等会返回错误)

常见问题

Q: 服务无法启动?

A: 检查是否有编译错误(除 LqEmployeeSalaryStatisticsService.cs 外)

dotnet build netcore/src/Modularity/Extend/NCC.Extend/NCC.Extend.csproj

Q: 数据库连接失败?

A: 检查数据库配置和连接字符串

Q: Token 获取失败?

A: 检查登录接口是否正常,账户密码是否正确

Q: 接口返回 404?

A: 检查路由配置,确保接口路径正确

  • 应该是 /api/Extend/LqReimbursementWorkflowConfig
  • 不是 /api/extend/...(注意大小写)

Q: 创建接口返回错误?

A: 检查:

  1. 请求体格式是否正确(JSON)
  2. 节点顺序是否连续(1, 2, 3...)
  3. 节点名称是否为空
  4. Content-Type 是否为 application/json

测试数据示例

最小有效流程配置

{
  "workflowName": "测试流程",
  "isEnabled": 1,
  "description": "测试",
  "nodes": [
    {
      "nodeOrder": 1,
      "nodeName": "节点1",
      "approvalType": "会签",
      "isRequired": 1,
      "approverIds": [],
      "approverNames": []
    }
  ]
}

完整流程配置(2个节点)

{
  "workflowName": "标准报销流程",
  "isEnabled": 1,
  "description": "适用于一般报销申请的审批流程",
  "nodes": [
    {
      "nodeOrder": 1,
      "nodeName": "部门经理审批",
      "approvalType": "会签",
      "isRequired": 1,
      "approverIds": [],
      "approverNames": []
    },
    {
      "nodeOrder": 2,
      "nodeName": "财务审批",
      "approvalType": "会签",
      "isRequired": 1,
      "approverIds": [],
      "approverNames": []
    }
  ]
}

下一步

完成接口测试后,可以:

  1. 修改报销申请创建接口,支持使用流程配置
  2. 前端页面开发和对接