Files
novalon-manage-system/dogfood-output/report.md
T
张翔 e4111ddb1a feat(react19-migration): 阶段1 - 项目基础设施重建
- T1.1: 卸载 Vue 依赖,安装 React 19 + Ant Design 5 + Zustand 5 + AntV 全家桶
- T1.2: Vite 配置迁移 (plugin-vue → plugin-react, manualChunks 更新)
- T1.3: TypeScript 配置迁移 (jsx: preserve → react-jsx, 移除 .vue)
- T1.4: ESLint 配置迁移 (Vue 规则 → React/Hooks/Refresh 规则)
- T1.5: 入口文件迁移 (main.ts → main.tsx, App.vue → App.tsx, div#app → div#root)

验证: npm run dev 成功启动空白 React 应用
2026-05-06 19:43:39 +08:00

6.5 KiB
Raw Blame History

Dogfood Report: Novalon管理系统

Field Value
Date 2026-04-28
App URL http://localhost:3002
Session novalon-test
Scope 全应用探索性测试,重点关注用户旅程(User Journey

Summary

Severity Count
Critical 0
High 1
Medium 2
Low 1
Total 4

Test Environment

Test Execution Summary

服务状态验证

  • 后端服务 (8084): 正常运行
  • 网关服务 (8080): 正常运行
  • 前端服务 (3002): 正常运行
  • 数据库连接: 正常

数据库验证

  • 用户表: 7条记录
  • 角色表: 8条记录
  • 菜单表: 51条记录
  • 字典类型表: 8条记录
  • 系统配置表: 9条记录

API测试结果

  • 登录API: 正常工作,返回JWT token
  • 用户管理API: 正常工作,需要签名验证
  • 角色管理API: 正常工作,需要签名验证
  • 菜单管理API: 正常工作,需要签名验证
  • 字典管理API: 正常工作,需要签名验证
  • 系统配置API: 正常工作,需要签名验证

日志监控结果

  • 后端日志: 无ERROR或Exception
  • ⚠️ 网关日志: 有配置警告,但不影响功能
  • 前端日志: 未发现异步功能错误

Issues

ISSUE-001: API签名验证机制导致测试困难

Field Value
Severity high
Category functional
URL http://localhost:8080/api/*
Repro Video N/A

Description

所有API请求都需要签名验证(X-Signature, X-Timestamp, X-Nonce),这导致:

  1. 直接使用curl或Postman测试API时会被拒绝
  2. 测试脚本需要实现签名生成逻辑,增加了测试复杂度
  3. 签名验证失败时,错误信息不够友好

Expected Behavior

  • 应该提供测试模式,允许跳过签名验证
  • 或者提供测试工具/库来简化签名生成

Actual Behavior

  • API返回401错误,提示签名验证失败
  • 错误信息:{"error": "Unauthorized", "code": "INVALID_SIGNATURE", "message": "Request signature verification failed. Please ensure you have included valid X-Signature, X-Timestamp, and X-Nonce headers."}

Impact

  • 增加了API测试的复杂度
  • 影响开发效率
  • 可能导致测试覆盖率不足

ISSUE-002: 网关配置警告

Field Value
Severity medium
Category console
URL N/A
Repro Video N/A

Description

网关启动时出现多个配置警告:

  1. management.endpoint.env.enabled 配置项使用了不兼容的目标类型
  2. management.endpoint.loggers.enabled 配置项使用了不兼容的目标类型
  3. management.endpoint.metrics.enabled 配置项使用了不兼容的目标类型
  4. management.metrics.web.server.request.autotime.enabled 配置项应该全局配置

Expected Behavior

  • 网关启动时不应该有配置警告
  • 配置文件应该符合Spring Boot 3.x的最佳实践

Actual Behavior

  • 网关启动时出现多个配置警告
  • 虽然不影响功能,但可能会在未来的Spring Boot版本中导致问题

Impact

  • 配置警告可能导致未来的兼容性问题
  • 影响日志的可读性

ISSUE-003: Playwright测试执行卡住

Field Value
Severity medium
Category functional
URL N/A
Repro Video N/A

Description

执行Playwright测试时,测试进程似乎卡住,没有输出任何内容:

  • 运行 npm run test:e2e:journeys 后,进程一直处于运行状态
  • 没有测试输出,没有错误信息
  • 需要手动终止进程

Expected Behavior

  • 测试应该正常执行并输出结果
  • 如果有问题,应该输出错误信息

Actual Behavior

  • 测试进程卡住,无输出
  • 无法判断测试是否在运行

Impact

  • 无法执行自动化测试
  • 影响CI/CD流程
  • 无法验证代码质量

ISSUE-004: 测试数据清理不彻底

Field Value
Severity low
Category functional
URL N/A
Repro Video N/A

Description

数据库中存在测试用户数据,说明之前的测试没有正确清理:

  • 用户表中有多条 testuser_* 开头的测试用户
  • 这些数据可能是之前测试遗留的

Expected Behavior

  • 每次测试后应该清理测试数据
  • 数据库应该保持干净状态

Actual Behavior

  • 数据库中存在遗留的测试数据
  • 可能影响后续测试的结果

Impact

  • 可能导致测试结果不准确
  • 影响数据质量

Recommendations

高优先级

  1. 简化API签名验证机制
    • 提供测试模式,允许跳过签名验证
    • 或者提供测试工具/库来简化签名生成
    • 改进错误信息,提供更详细的调试信息

中优先级

  1. 修复网关配置警告

    • 更新配置文件以符合Spring Boot 3.x的最佳实践
    • 参考Spring Boot官方文档更新配置项
  2. 修复Playwright测试问题

    • 检查Playwright配置
    • 确保测试能够正常执行
    • 添加超时机制,避免测试卡住

低优先级

  1. 改进测试数据清理
    • 在测试套件中添加清理步骤
    • 使用事务回滚或数据库快照来隔离测试数据

Test Coverage

已测试的功能模块

  • 用户登录
  • 用户管理(查询)
  • 角色管理(查询)
  • 菜单管理(查询)
  • 字典管理(查询)
  • 系统配置(查询)

未测试的功能模块

  • 用户管理(创建、编辑、删除)
  • 角色管理(创建、编辑、删除)
  • 字典管理(创建、编辑、删除)
  • 系统配置(创建、编辑、删除)
  • 文件管理
  • 通知管理
  • 日志管理

Conclusion

本次dogfood测试发现了一些关键问题:

  1. API签名验证机制增加了测试复杂度,需要改进
  2. 网关配置存在警告,需要修复以避免未来的兼容性问题
  3. Playwright测试执行存在问题,需要修复
  4. 测试数据清理不彻底,需要改进

建议优先解决API签名验证问题,以便能够更有效地进行自动化测试。同时,修复网关配置警告和Playwright测试问题,确保测试套件能够正常运行。