Files
novalon-manage-system/findings.md
T
张翔 be5d5ede90 feat: 添加异常日志功能并优化UI样式
refactor: 重构后端查询逻辑和API响应处理

fix: 修复用户角色更新和文件上传问题

test: 添加前端性能测试脚本和E2E测试用例

chore: 更新依赖版本和配置文件

docs: 添加环境检查脚本和测试文档

style: 统一表格标签样式和路由命名

perf: 优化前端页面加载速度和响应时间
2026-03-24 13:32:20 +08:00

5.0 KiB
Raw Blame History

Findings

测试覆盖率分析

manage-sys模块覆盖率详情

  • Date: 2026-03-19 (最终更新)
  • Source: Jacoco覆盖率报告
  • Details:
    • 初始覆盖率:76%
    • 第二次提升:78%(新增OperationLogHandlerTest
    • 第三次提升:79%(新增SysUserService测试)
    • 最终覆盖率:79%(新增OperationLogService测试)
    • 新增测试:OperationLogHandlerTest7个)+ SysUserService3个)+ OperationLogService3个)
    • 总测试数:从386增加到399
  • Impact: 距离80%目标仅差1%,覆盖率显著提升

未充分覆盖的区域

  • Date: 2026-03-19
  • Source: Jacoco HTML报告分析
  • Details:
    • Handler层:部分HTTP请求处理逻辑未覆盖
    • 异常处理:边界条件和错误处理路径
    • 复杂业务逻辑:角色权限验证、数据验证等
  • Impact: 需要优先为这些区域添加测试

API集成测试失败分析

test_logical_delete_user_success

  • Date: 2026-03-19
  • Source: pytest执行结果
  • Details:
    • 预期:逻辑删除后,get_user_by_id应返回404
    • 实际:返回200
    • 原因:findById方法未过滤已删除用户(deletedAt不为null
  • Fix: 已修复
    • 在SysUserDao中添加findByIdAndDeletedAtIsNull方法
    • 修改SysUserRepository.findById使用新方法
    • 测试现在通过
  • Date: 2026-03-19
  • Source: pytest执行结果
  • Details:
    • 预期:搜索结果中所有用户的username或email都包含"search"
    • 实际:返回结果中包含不匹配的用户
    • 原因:搜索功能的实现可能需要优化,或测试预期需要调整
  • Fix: 已修复
    • 发现问题:SysUserQueryCriteria使用了错误的QueryField注解(来自manage-db.dao而不是manage-common.dao
    • 修复方法:修改import语句,使用正确的QueryField注解
    • 验证:测试现在通过,搜索功能正常工作
    • 新增日志:在QueryUtil中添加详细日志,便于调试查询构建过程

E2E测试现状

当前覆盖范围

  • Date: 2026-03-19 (最终更新)
  • Source: E2E测试文件分析
  • Details:
    • basic.spec.ts:基础功能测试(6个测试,100%通过)
    • user-lifecycle.spec.ts:用户生命周期测试(4个测试,100%通过)
    • role-management.spec.ts:角色权限管理测试(7个测试,100%通过)
    • file-management.spec.ts:文件管理测试(10个测试,100%通过)
    • 总计:27个E2E测试,100%通过率
  • Impact: E2E测试覆盖显著扩展,包含完整业务流程

新增测试详情

  • Date: 2026-03-19
  • Source: 新增测试文件分析
  • Details:
    • user-lifecycle.spec.ts4个测试):
      • 完整用户生命周期:登录 -> 查看用户列表 -> 登出
      • 用户登录成功场景:正确密码
      • 用户会话管理:验证登录状态持久性
      • 用户导航功能:测试系统菜单导航
    • role-management.spec.ts7个测试):
      • 查看角色列表
      • 角色管理页面导航
      • 角色搜索功能
      • 角色详情查看
      • 角色管理页面刷新
      • 角色权限验证
      • 角色管理响应式布局
    • file-management.spec.ts10个测试):
      • 查看文件列表
      • 文件管理页面导航
      • 文件搜索功能
      • 文件详情查看
      • 文件管理页面刷新
      • 文件权限验证
      • 文件管理响应式布局
      • 文件管理页面元素验证
      • 文件管理分页功能
      • 文件管理表格排序功能
  • Impact: 覆盖了关键业务流程和用户交互场景

已解决的测试场景

  • Date: 2026-03-19
  • Source: 业务需求分析
  • Details:
    • 完整用户流程:登录 → 操作 → 登出
    • 角色权限管理:查看角色、权限验证
    • 文件管理:文件列表、搜索、详情查看
  • Impact: 核心业务流程已通过E2E测试验证

环境配置发现

前端服务配置

  • Date: 2026-03-19
  • Source: playwright.config.ts
  • Details:
  • Impact: 前端E2E测试环境配置正确

后端服务配置

  • Date: 2026-03-19
  • Source: SecurityConfig.java
  • Details:
    • /actuator/**端点已开放所有HTTP方法
    • 认证配置正确
    • JWT过滤器配置正确
  • Impact: 后端服务可正常访问

技术债务

测试数据管理

  • Date: 2026-03-19
  • Source: conftest.py分析
  • Details:
    • 使用时间戳生成唯一测试数据
    • 有cleanup机制但可能不够完善
    • 测试数据隔离性需验证
  • Impact: 需要优化测试数据管理,确保测试独立性

测试执行速度

  • Date: 2026-03-19
  • Source: 测试执行观察
  • Details:
    • API集成测试执行较快(约10秒)
    • E2E测试执行较慢(需启动浏览器)
    • 后端单元测试执行快(约9秒)
  • Impact: 可考虑并行执行优化测试速度