Files
ccdi/docs/test-scripts
wkc 206754adb4 test: 添加项目创建功能测试脚本和文档
- 添加 Bash 测试脚本 (test-project-creation.sh)
- 添加 PowerShell 测试脚本 (test-project-creation.ps1)
- 添加批处理测试脚本 (test-project-creation.bat)
- 添加测试说明文档 (README.md)
- 支持4个测试场景:成功、参数校验、查询列表、异常处理
- 包含数据库验证和事务回滚验证
2026-03-04 11:04:16 +08:00
..

项目创建功能测试说明

概述

本文档说明如何使用测试脚本测试"创建项目时集成流水分析平台"功能。

测试场景

1. 创建项目成功

  • 目标: 验证创建项目时成功调用流水分析平台并保存 lsfxProjectId
  • 步骤:
    1. 准备项目数据(项目名称、描述、配置方式)
    2. 调用创建项目接口
    3. 验证响应中包含 lsfxProjectId
    4. 验证数据库中 lsfx_project_id 字段已保存

2. 创建项目失败(项目名称为空)

  • 目标: 验证参数校验功能
  • 预期: 接口应拒绝空项目名称,返回错误信息

3. 查询项目列表

  • 目标: 验证项目列表中正确显示 lsfxProjectId
  • 步骤:
    1. 调用项目列表查询接口
    2. 验证返回数据包含 lsfxProjectId 字段

4. 流水分析平台不可用(可选)

  • 目标: 验证异常处理和事务回滚
  • 步骤:
    1. 停止 Mock Server
    2. 尝试创建项目
    3. 验证返回错误信息
    4. 验证数据库无脏数据(事务已回滚)

前置条件

必须条件

  1. 后端服务已启动

    cd ruoyi-admin
    mvn spring-boot:run
    

    访问地址: http://localhost:8080

  2. Mock Server 已启动测试场景1-3

    cd lsfx-mock-server
    python app.py
    

    访问地址: http://localhost:8000

  3. 数据库连接正常

    • 主机: 116.62.17.81
    • 数据库: ccdi
    • 用户: root

可选条件

  • MySQL客户端: 用于验证数据库bash脚本需要
  • PowerShell 5.1+: 用于运行 PowerShell 脚本
  • Git Bash: 用于运行 bash 脚本Windows 环境)

测试脚本

提供了三个版本的测试脚本:

1. Bash 脚本(推荐)

适用环境: Linux、MacOS、Git Bash (Windows)

执行方式:

# 进入测试脚本目录
cd docs/test-scripts

# 赋予执行权限
chmod +x test-project-creation.sh

# 执行测试
./test-project-creation.sh

优点:

  • 功能最完整
  • 支持数据库验证
  • 彩色输出

2. PowerShell 脚本

适用环境: Windows (PowerShell 5.1+)

执行方式:

# 进入测试脚本目录
cd docs\test-scripts

# 执行测试
.\test-project-creation.ps1

优点:

  • Windows 原生支持
  • 交互式提示
  • 无需额外工具

3. 批处理脚本

适用环境: Windows (CMD)

执行方式:

cd docs\test-scripts
test-project-creation.bat

优点:

  • 简单易用
  • 无需额外工具

预期结果

成功指标

  1. 创建项目成功

    • 响应 code: 200
    • 响应包含 lsfxProjectId 字段77
    • 数据库 ccdi_project 表中 lsfx_project_id 不为空
  2. 参数校验

    • 空项目名称被拒绝
    • 返回错误信息
  3. 查询列表

    • 响应 code: 200
    • 列表数据包含 lsfxProjectId 字段
  4. 异常处理(可选)

    • Mock Server 不可用时返回错误
    • 数据库无脏数据(事务回滚)

测试输出示例

==========================================
开始执行项目创建功能测试
==========================================
[INFO] 检查后端服务状态...
[INFO] ✓ 后端服务运行正常
[INFO] 获取访问令牌...
[INFO] ✓ 成功获取令牌
==========================================
测试场景1创建项目成功
==========================================
[INFO] 请求数据: {"projectName":"集成测试项目_20260304_105500","description":"测试集成流水分析平台","configType":"default"}
[INFO] 响应内容: {"code":200,"msg":"项目创建成功","data":{...}}
[INFO] ✓ 项目创建成功
[INFO] ✓ 流水分析平台项目ID: 77
[INFO] 验证数据库...
[INFO] ✓ 数据库验证通过lsfx_project_id 已正确保存
...
==========================================
测试结果汇总
==========================================
[INFO] 通过: 3
[ERROR] 失败: 0
[INFO] 总计: 3
[INFO] ✓ 所有测试通过!

手动测试Swagger UI

如果需要手动测试,可以使用 Swagger UI

  1. 访问 Swagger UI

    http://localhost:8080/swagger-ui/index.html
    
  2. 获取 Token

    • 找到 /login/test 接口
    • 点击 "Try it out"
    • 输入 username: admin, password: admin123
    • 点击 "Execute"
    • 复制返回的 token
  3. 设置认证

    • 点击页面顶部 "Authorize" 按钮
    • 输入 Bearer <token>
    • 点击 "Authorize"
  4. 创建项目

    • 找到 POST /ccdi/project 接口
    • 点击 "Try it out"
    • 输入请求体:
      {
        "projectName": "手动测试项目",
        "description": "通过Swagger测试",
        "configType": "default"
      }
      
    • 点击 "Execute"
    • 查看响应,验证 lsfxProjectId 存在
  5. 查询项目

    • 找到 GET /ccdi/project/list 接口
    • 点击 "Try it out"
    • 点击 "Execute"
    • 验证返回数据包含 lsfxProjectId

故障排查

问题1: 后端服务连接失败

原因: 后端未启动或端口被占用 解决:

  • 检查端口 8080 是否被占用
  • 重启后端服务

问题2: Mock Server 连接失败

原因: Mock Server 未启动 解决:

cd lsfx-mock-server
python app.py

问题3: 获取 Token 失败

原因: 用户名或密码错误 解决:

  • 确认使用 admin/admin123
  • 检查后端日志

问题4: lsfxProjectId 为空

原因: 流水分析平台调用失败 解决:

  • 检查 Mock Server 是否运行
  • 查看后端日志中的错误信息
  • 确认 LsfxAnalysisClient 配置正确

问题5: 数据库验证失败

原因: 数据库连接问题或字段未保存 解决:

  • 检查数据库连接配置
  • 确认 lsfx_project_id 字段已添加到表
  • 查看后端日志

注意事项

  1. 测试顺序: 按照场景1→2→3→4的顺序执行
  2. 数据清理: 测试会创建临时项目数据,建议定期清理
  3. Mock Server: 场景4需要停止 Mock Server其他场景需要运行
  4. 事务回滚: 异常场景验证事务是否正确回滚
  5. 权限: 测试账号需要有项目创建权限

相关文档