Files
mes-ui-d2/docs/功能测试流程文档.md
sheng 20a821ba32 feat: 完成系统管理模块功能迭代
新增用户、菜单、日志、问题帮助等业务模块,优化角色权限分配功能,新增依赖包与全局组件
2026-05-29 18:12:54 +08:00

62 KiB
Raw Blame History

功能测试流程文档

累积追加模式:每次完成功能迁移后,将新功能的测试内容追加至本文档末尾。
测试人员按章节执行,通过项打 ,未通过项记录具体问题。


测试环境配置

配置项 要求
浏览器 Chrome 最新版、Edge 最新版
屏幕分辨率 ≥ 1920×1080
后端服务 测试环境 API 正常运行
测试账号 具有系统管理员权限(含用户管理、角色管理菜单权限)
语言 先测中文,再切换到英文验证 i18n

测试前置条件

  1. 后端 API 服务已启动并正常运行
  2. 前端项目 pnpm dev 正常启动,可访问登录页
  3. 使用管理员账号登录系统
  4. 侧边栏菜单 系统设置 → 用户管理 下可见 角色用户 两个子菜单


一、角色管理功能测试

迁移日期2026-05-28
对应页面src/views/system-administration/user-management/role/index.vue
API 文件src/api/system-administration/role.js
路由路径/system_settings/user_management/role

1.1 页面加载与数据展示

TC-ROLE-001角色列表正常加载

项目 内容
测试步骤 1. 登录系统 2. 点击菜单「系统设置 → 用户管理 → 角色」
预期结果 页面正常加载,显示角色列表表格,包含序号、角色名称、状态、描述、操作列;底部分页组件显示总条数
实际结果
测试状态 通过 / 未通过
问题描述

TC-ROLE-002状态列显示正确

项目 内容
测试步骤 查看角色列表中各行的状态列
预期结果 状态为 1 时显示绿色 图标 + "启用" 文字;状态为 0 时显示灰色 图标 + "禁用" 文字
实际结果
测试状态 通过 / 未通过
问题描述

TC-ROLE-003搜索功能

项目 内容
测试步骤 1. 在角色名称输入框输入关键字 2. 选择状态下拉为"启用" 3. 点击「查询」按钮
预期结果 表格数据按搜索条件过滤,仅显示匹配的角色
实际结果
测试状态 通过 / 未通过
问题描述

TC-ROLE-004重置搜索

项目 内容
测试步骤 1. 输入搜索条件并查询 2. 点击「重置」按钮
预期结果 搜索条件清空,表格恢复显示全部数据
实际结果
测试状态 通过 / 未通过
问题描述

TC-ROLE-005分页功能

项目 内容
测试步骤 1. 切换每页显示条数 2. 点击下一页/上一页 3. 输入页码跳转
预期结果 分页切换正常,表格数据按分页加载,总条数正确显示
实际结果
测试状态 通过 / 未通过
问题描述

1.2 新增角色

TC-ROLE-006打开新增弹框

项目 内容
测试步骤 点击表格上方工具栏「新增」按钮
预期结果 弹出新增角色弹框,标题显示"新增角色",表单为空(名称、描述为空,状态默认"启用"
实际结果
测试状态 通过 / 未通过
问题描述

TC-ROLE-007新增表单校验

项目 内容
测试步骤 1. 打开新增弹框 2. 不填写任何内容直接点击「确定」
预期结果 角色名称输入框下方显示红色校验提示"请输入角色名称"
实际结果
测试状态 通过 / 未通过
问题描述

TC-ROLE-008新增角色成功

项目 内容
测试步骤 1. 打开新增弹框 2. 输入角色名称(如"测试角色001"3. 输入描述 4. 选择状态为"启用" 5. 点击「确定」
预期结果 弹框关闭,提示"操作成功",表格刷新并显示新增的角色
实际结果
测试状态 通过 / 未通过
问题描述

TC-ROLE-009取消新增

项目 内容
测试步骤 1. 打开新增弹框 2. 填写部分内容 3. 点击「取消」按钮
预期结果 弹框关闭,表格数据不变
实际结果
测试状态 通过 / 未通过
问题描述

1.3 编辑角色

TC-ROLE-010打开编辑弹框

项目 内容
测试步骤 点击非系统角色(非超级管理员等)行操作列的「编辑」按钮
预期结果 弹出编辑角色弹框,标题显示"编辑角色",表单回填该角色的名称、描述、状态
实际结果
测试状态 通过 / 未通过
问题描述

TC-ROLE-011编辑角色成功

项目 内容
测试步骤 1. 打开编辑弹框 2. 修改角色名称 3. 点击「确定」
预期结果 弹框关闭,提示"操作成功",表格数据更新
实际结果
测试状态 通过 / 未通过
问题描述

1.4 删除角色

TC-ROLE-012删除角色确认

项目 内容
测试步骤 点击非系统角色行操作列的「删除」按钮
预期结果 弹出确认提示框,内容为"确定要删除该角色吗?",有「确定」和「取消」按钮
实际结果
测试状态 通过 / 未通过
问题描述

TC-ROLE-013删除角色成功

项目 内容
测试步骤 1. 点击删除按钮 2. 在确认框中点击「确定」
预期结果 提示"操作成功",该角色从列表中消失,分页总数减 1
实际结果
测试状态 通过 / 未通过
问题描述

TC-ROLE-014取消删除

项目 内容
测试步骤 1. 点击删除按钮 2. 在确认框中点击「取消」
预期结果 确认框关闭,角色数据不变
实际结果
测试状态 通过 / 未通过
问题描述

1.5 启用/禁用角色

TC-ROLE-015启用角色

项目 内容
测试步骤 1. 勾选一个或多个状态为"禁用"的非系统角色 2. 点击工具栏「启用」按钮
预期结果 所选角色状态变为"启用"
实际结果
测试状态 通过 / 未通过
问题描述

TC-ROLE-016禁用角色

项目 内容
测试步骤 1. 勾选一个或多个状态为"启用"的非系统角色 2. 点击工具栏「禁用」按钮
预期结果 所选角色状态变为"禁用"
实际结果
测试状态 通过 / 未通过
问题描述

TC-ROLE-017未选中时点击启用/禁用

项目 内容
测试步骤 不勾选任何行,直接点击工具栏「启用」或「禁用」按钮
预期结果 提示"请先勾选要操作的数据"
实际结果
测试状态 通过 / 未通过
问题描述

1.6 系统角色保护

TC-ROLE-018系统角色不可勾选

项目 内容
测试步骤 尝试勾选 system=1 的系统角色(如超级管理员)
预期结果 复选框不可勾选(灰色禁用状态)
实际结果
测试状态 通过 / 未通过
问题描述

TC-ROLE-019系统角色不显示编辑/删除/分配权限按钮

项目 内容
测试步骤 查看系统角色system=1行操作列
预期结果 操作列不显示「编辑」「分配权限」「删除」按钮
实际结果
测试状态 通过 / 未通过
问题描述

1.7 权限分配抽屉

TC-ROLE-020打开权限分配抽屉

项目 内容
测试步骤 点击非系统角色行操作列的「分配权限」按钮
预期结果 从右侧滑出抽屉面板,标题显示"分配权限",内含加载中的菜单树,底部有「取消」「确定」按钮
实际结果
测试状态 通过 / 未通过
问题描述

TC-ROLE-021权限树正确加载

项目 内容
测试步骤 等待权限树加载完成
预期结果 显示完整菜单树(含多层级),该角色已拥有的权限节点处于勾选状态
实际结果
测试状态 通过 / 未通过
问题描述

TC-ROLE-022勾选/取消权限节点

项目 内容
测试步骤 1. 勾选一个未勾选的菜单节点 2. 取消一个已勾选的菜单节点
预期结果 勾选状态正常切换父子节点独立勾选check-strictly 模式)
实际结果
测试状态 通过 / 未通过
问题描述

TC-ROLE-023保存权限分配

项目 内容
测试步骤 1. 修改权限勾选 2. 点击抽屉底部「确定」按钮
预期结果 提交成功提示"操作成功",抽屉关闭,表格刷新
实际结果
测试状态 通过 / 未通过
问题描述

TC-ROLE-024取消权限分配

项目 内容
测试步骤 1. 修改权限勾选 2. 点击抽屉底部「取消」按钮
预期结果 抽屉关闭,勾选修改不生效
实际结果
测试状态 通过 / 未通过
问题描述


二、用户管理功能测试

迁移日期2026-05-28
对应页面src/views/system-administration/user-management/user/index.vue
API 文件src/api/system-administration/user.js
路由路径/system_settings/user_management/user

2.1 页面加载与数据展示

TC-USER-001用户列表正常加载

项目 内容
测试步骤 1. 登录系统 2. 点击菜单「系统设置 → 用户管理 → 用户」
预期结果 页面正常加载显示用户列表表格包含序号、账号、姓名、出入证编号、状态、用户组、上次登录IP、上次登录时间、操作列底部分页组件显示总条数
实际结果
测试状态 通过 / 未通过
问题描述

TC-USER-002状态列显示正确

项目 内容
测试步骤 查看用户列表中各行的状态列
预期结果 状态为 1 时显示绿色 图标 + "启用" 文字;状态为 0 时显示灰色 图标 + "禁用" 文字
实际结果
测试状态 通过 / 未通过
问题描述

TC-USER-003搜索功能—按账号

项目 内容
测试步骤 1. 在账号输入框输入关键字 2. 点击「查询」
预期结果 表格数据按账号关键字过滤
实际结果
测试状态 通过 / 未通过
问题描述

TC-USER-004搜索功能—按姓名

项目 内容
测试步骤 1. 在姓名输入框输入关键字 2. 点击「查询」
预期结果 表格数据按姓名关键字过滤
实际结果
测试状态 通过 / 未通过
问题描述

TC-USER-005搜索功能—组合条件

项目 内容
测试步骤 1. 同时输入账号和姓名关键字 2. 点击「查询」
预期结果 表格数据按两个条件同时过滤AND 逻辑)
实际结果
测试状态 通过 / 未通过
问题描述

TC-USER-006重置搜索

项目 内容
测试步骤 1. 输入搜索条件并查询 2. 点击「重置」按钮
预期结果 搜索条件清空,表格恢复显示全部数据
实际结果
测试状态 通过 / 未通过
问题描述

TC-USER-007分页功能

项目 内容
测试步骤 1. 切换每页显示条数10/25/50/1002. 点击下一页/上一页 3. 输入页码跳转
预期结果 分页切换正常,表格数据按分页加载,总条数正确显示
实际结果
测试状态 通过 / 未通过
问题描述

2.2 新增用户

TC-USER-008打开新增弹框

项目 内容
测试步骤 点击表格上方工具栏「新增」按钮
预期结果 弹出新增用户弹框,标题显示"新增用户",表单包含:账号、密码、确认密码、用户组(下拉)、姓名、出入证编号、状态(默认"启用"
实际结果
测试状态 通过 / 未通过
问题描述

TC-USER-009新增表单校验—必填项

项目 内容
测试步骤 1. 打开新增弹框 2. 不填写任何内容直接点击「确定」
预期结果 账号、密码、确认密码、用户组字段下方分别显示红色校验提示
实际结果
测试状态 通过 / 未通过
问题描述

TC-USER-010新增表单校验—账号长度

项目 内容
测试步骤 1. 打开新增弹框 2. 输入账号为 2 个字符(如"ab"3. 点击「确定」
预期结果 账号字段下方提示"长度在 3 到 20 个字符"
实际结果
测试状态 通过 / 未通过
问题描述

TC-USER-011新增表单校验—密码长度

项目 内容
测试步骤 1. 打开新增弹框 2. 输入密码为 5 个字符 3. 点击「确定」
预期结果 密码字段下方提示"长度在 6 到 64 个字符"
实际结果
测试状态 通过 / 未通过
问题描述

TC-USER-012新增表单校验—两次密码不一致

项目 内容
测试步骤 1. 打开新增弹框 2. 密码输入"123456",确认密码输入"654321" 3. 填写其他必填项 4. 点击「确定」
预期结果 提示"两次输入的密码不一致",弹框不关闭
实际结果
测试状态 通过 / 未通过
问题描述

TC-USER-013新增用户成功

项目 内容
测试步骤 1. 打开新增弹框 2. 输入账号(如"testuser001"3. 输入密码和确认密码 4. 选择用户组 5. 输入姓名 6. 选择状态为"启用" 7. 点击「确定」
预期结果 弹框关闭,提示"操作成功",表格刷新并显示新增的用户
实际结果
测试状态 通过 / 未通过
问题描述

TC-USER-014取消新增

项目 内容
测试步骤 1. 打开新增弹框 2. 填写部分内容 3. 点击「取消」按钮
预期结果 弹框关闭,表格数据不变
实际结果
测试状态 通过 / 未通过
问题描述

2.3 编辑用户

TC-USER-015打开编辑弹框

项目 内容
测试步骤 点击任意用户行操作列的「编辑」按钮
预期结果 弹出编辑用户弹框,标题显示"编辑用户",表单回填该用户的账号、用户组、姓名、出入证编号、状态;密码和确认密码字段不显示
实际结果
测试状态 通过 / 未通过
问题描述

TC-USER-016编辑用户成功

项目 内容
测试步骤 1. 打开编辑弹框 2. 修改用户组 3. 修改姓名 4. 点击「确定」
预期结果 弹框关闭,提示"操作成功",表格数据更新
实际结果
测试状态 通过 / 未通过
问题描述

2.4 删除用户

TC-USER-017删除其他用户确认

项目 内容
测试步骤 点击非当前登录用户行操作列的「删除」按钮
预期结果 弹出确认提示框"确定要删除该用户吗?",有「确定」和「取消」按钮
实际结果
测试状态 通过 / 未通过
问题描述

TC-USER-018删除用户成功

项目 内容
测试步骤 1. 点击非当前用户的删除按钮 2. 在确认框中点击「确定」
预期结果 提示"操作成功",该用户从列表中消失
实际结果
测试状态 通过 / 未通过
问题描述

TC-USER-019不能删除自己

项目 内容
测试步骤 找到当前登录用户所在行,点击「删除」按钮
预期结果 提示"不能删除自己的账号",不弹出确认框
实际结果
测试状态 通过 / 未通过
问题描述

2.5 批量删除

TC-USER-020批量删除—正常

项目 内容
测试步骤 1. 勾选多个非当前用户的用户行 2. 点击工具栏「批量删除」按钮 3. 确认框中点击「确定」
预期结果 提示"操作成功",勾选的用户从列表中消失
实际结果
测试状态 通过 / 未通过
问题描述

TC-USER-021批量删除—包含自己

项目 内容
测试步骤 1. 勾选自己 + 其他用户 2. 点击工具栏「批量删除」按钮
预期结果 自己的账号自动从勾选列表中排除,仅删除其他用户
实际结果
测试状态 通过 / 未通过
问题描述

TC-USER-022批量删除—未勾选

项目 内容
测试步骤 不勾选任何行,直接点击「批量删除」按钮
预期结果 提示"请先勾选要操作的数据"
实际结果
测试状态 通过 / 未通过
问题描述

2.6 启用/禁用用户

TC-USER-023启用用户

项目 内容
测试步骤 1. 勾选一个或多个状态为"禁用"的其他用户 2. 点击工具栏「启用」按钮 3. 确认框中点击「确定」
预期结果 所选用户状态变为"启用"
实际结果
测试状态 通过 / 未通过
问题描述

TC-USER-024禁用用户

项目 内容
测试步骤 1. 勾选一个或多个状态为"启用"的其他用户 2. 点击工具栏「禁用」按钮 3. 确认框中点击「确定」
预期结果 所选用户状态变为"禁用"
实际结果
测试状态 通过 / 未通过
问题描述

TC-USER-025不能禁用自己

项目 内容
测试步骤 1. 勾选自己的账号 2. 点击工具栏「禁用」按钮
预期结果 提示"不能操作自己的账号",操作不执行
实际结果
测试状态 通过 / 未通过
问题描述

TC-USER-026未勾选时点击启用/禁用

项目 内容
测试步骤 不勾选任何行,直接点击「启用」或「禁用」按钮
预期结果 提示"请先勾选要操作的数据"
实际结果
测试状态 通过 / 未通过
问题描述

2.7 重置密码

TC-USER-027重置密码确认

项目 内容
测试步骤 点击任意用户行操作列的「重置密码」按钮
预期结果 弹出确认提示框"确定要重置该用户密码吗?"
实际结果
测试状态 通过 / 未通过
问题描述

TC-USER-028重置密码成功

项目 内容
测试步骤 1. 点击「重置密码」按钮 2. 在确认框中点击「确定」
预期结果 提示"操作成功",该用户密码被重置
实际结果
测试状态 通过 / 未通过
问题描述

TC-USER-029取消重置密码

项目 内容
测试步骤 1. 点击「重置密码」按钮 2. 在确认框中点击「取消」
预期结果 确认框关闭,密码不变
实际结果
测试状态 通过 / 未通过
问题描述

2.8 用户组下拉数据

TC-USER-030新增时用户组下拉有数据

项目 内容
测试步骤 打开新增用户弹框,点击用户组下拉框
预期结果 下拉框显示所有角色列表(从角色管理页创建的角色应全部出现)
实际结果
测试状态 通过 / 未通过
问题描述

TC-USER-031编辑时用户组下拉有数据

项目 内容
测试步骤 打开编辑用户弹框,点击用户组下拉框
预期结果 下拉框显示所有角色列表,当前用户所属角色为选中状态
实际结果
测试状态 通过 / 未通过
问题描述

2.9 多语言切换

TC-USER-032切换到英文

项目 内容
测试步骤 1. 切换到英文语言 2. 查看用户管理页面
预期结果 所有标签、按钮、表头、弹框标题均切换为英文显示
实际结果
测试状态 通过 / 未通过
问题描述

TC-USER-033英文下操作正常

项目 内容
测试步骤 在英文界面下执行:查询、新增、编辑、删除操作
预期结果 所有功能正常运行,提示信息为英文
实际结果
测试状态 通过 / 未通过
问题描述

三、菜单配置功能测试

迁移日期2026-05-29
对应页面src/views/system-administration/menu-management/menu-configuration/index.vue
API 文件src/api/system-administration/menu-configuration.js
路由路径/system_settings/menu_configuration/menu
页面结构:左侧树形菜单 + 右侧表单卡片 + 顶部筛选栏

3.1 页面加载与树形展示

TC-MENU-001菜单配置页面正常加载

项目 内容
测试步骤 1. 登录系统 2. 点击菜单「系统设置 → 菜单管理 → 菜单配置」
预期结果 页面正常加载,左侧显示后台菜单树形结构(含文件夹/文档图标和菜单名称),右侧默认显示表单卡片(标题为"新增菜单"
实际结果
测试状态 通过 / 未通过
问题描述

TC-MENU-002树节点图标正确显示

项目 内容
测试步骤 查看左侧树形结构的各级节点图标
预期结果 有子节点的菜单展开时显示「打开的文件夹」图标,收起时显示「关闭的文件夹」图标;叶子节点显示「文档」图标;如果菜单配置了 FontAwesome 图标,则显示对应图标
实际结果
测试状态 通过 / 未通过
问题描述

TC-MENU-003点击树节点加载表单

项目 内容
测试步骤 点击左侧树形结构中任意菜单节点
预期结果 右侧表单卡片标题变为"编辑菜单"表单回填该菜单的所有信息上级菜单、名称、别名、图标、排序、导航开关、链接类型、打开方式、URL、参数、备注
实际结果
测试状态 通过 / 未通过
问题描述

TC-MENU-004禁用菜单节点差异化显示

项目 内容
测试步骤 找到状态为"禁用"的菜单节点(如有),查看其显示样式
预期结果 禁用的菜单节点文字颜色为灰色,并带有删除线样式(text-decoration: line-through),与其他正常节点明显区分
实际结果
测试状态 通过 / 未通过
问题描述

3.2 模块切换筛选

TC-MENU-005切换到 PDA 模块

项目 内容
测试步骤 在顶部筛选栏点击「PDA」单选按钮
预期结果 树形结构自动刷新,切换到 PDA 模块的菜单数据(与后台模块菜单不同)
实际结果
测试状态 通过 / 未通过
问题描述

TC-MENU-006按状态筛选

项目 内容
测试步骤 1. 在状态下拉框选择"启用" 2. 点击「查询」按钮
预期结果 树形结构仅显示状态为启用的菜单节点
实际结果
测试状态 通过 / 未通过
问题描述

TC-MENU-007按导航属性筛选

项目 内容
测试步骤 1. 在导航属性下拉框选择"可见" 2. 点击「查询」按钮
预期结果 树形结构仅显示导航属性为可见的菜单节点
实际结果
测试状态 通过 / 未通过
问题描述

TC-MENU-008按菜单深度筛选

项目 内容
测试步骤 1. 设置菜单深度为 1 2. 点击「查询」按钮
预期结果 树形结构仅显示深度为 1一级菜单的节点
实际结果
测试状态 通过 / 未通过
问题描述

TC-MENU-009重置搜索条件

项目 内容
测试步骤 1. 设置多个筛选条件并查询 2. 点击「重置」按钮
预期结果 筛选条件恢复默认(模块=后台,其他清空),树形结构恢复加载全部后台菜单数据
实际结果
测试状态 通过 / 未通过
问题描述

3.3 树的展开/收起/过滤

TC-MENU-010一键展开所有节点

项目 内容
测试步骤 点击工具栏「展开」按钮
预期结果 树形结构所有节点全部展开,显示完整的层级结构
实际结果
测试状态 通过 / 未通过
问题描述

TC-MENU-011一键收起所有节点

项目 内容
测试步骤 1. 先点击「展开」使所有节点展开 2. 再点击「收起」按钮
预期结果 所有子节点收起,仅显示一级根节点
实际结果
测试状态 通过 / 未通过
问题描述

TC-MENU-012过滤树节点

项目 内容
测试步骤 1. 在过滤输入框输入某个菜单名称的关键字(如"用户"2. 观察树形结构变化
预期结果 树形结构仅显示名称包含关键字的节点及其父/子路径节点
实际结果
测试状态 通过 / 未通过
问题描述

TC-MENU-013清除过滤

项目 内容
测试步骤 1. 输入过滤关键字使树节点被过滤 2. 清除过滤输入框内容(点击清空按钮或手动删除)
预期结果 树形结构恢复显示所有菜单节点
实际结果
测试状态 通过 / 未通过
问题描述

3.4 新增菜单(顶层)

TC-MENU-014新增顶层菜单—点击按钮

项目 内容
测试步骤 点击工具栏「新增顶层菜单」按钮
预期结果 右侧表单标题变为"新增菜单",表单所有字段清空为默认值,上级菜单为空(顶层)
实际结果
测试状态 通过 / 未通过
问题描述

TC-MENU-015新增顶层菜单—成功

项目 内容
测试步骤 1. 点击「新增顶层菜单」2. 填写名称(如"测试菜单"3. 选择图标 4. 设置排序号 5. 设置导航开关 6. 点击「确定」
预期结果 提示"操作成功",左侧树形结构根级新增该菜单节点,表单恢复为新增状态
实际结果
测试状态 通过 / 未通过
问题描述

TC-MENU-016新增顶层菜单—名称必填校验

项目 内容
测试步骤 1. 点击「新增顶层菜单」2. 不填写名称,点击「确定」
预期结果 名称字段下方提示"名称不能为空",表单不提交
实际结果
测试状态 通过 / 未通过
问题描述

TC-MENU-017新增顶层菜单—名称长度校验

项目 内容
测试步骤 1. 点击「新增顶层菜单」2. 名称输入超过 32 个字符 3. 点击「确定」
预期结果 名称字段下方提示"长度不能大于 32 个字符"
实际结果
测试状态 通过 / 未通过
问题描述

3.5 新增子菜单

TC-MENU-018新增子菜单—通过行按钮

项目 内容
测试步骤 将鼠标悬停到某个树节点上,点击出现的「新增」按钮
预期结果 右侧表单标题变为"新增菜单",上级菜单自动设置为当前悬停的节点,表单其他字段为空
实际结果
测试状态 通过 / 未通过
问题描述

TC-MENU-019新增子菜单—成功

项目 内容
测试步骤 1. 悬停到某个树节点上点击「新增」2. 填写名称 3. 选择链接类型为"模块" 4. 填写 URL 5. 点击「确定」
预期结果 提示"操作成功",左侧树形结构中该节点下出现新增的子菜单节点,表单恢复为新增状态
实际结果
测试状态 通过 / 未通过
问题描述

TC-MENU-020上级菜单级联选择器搜索

项目 内容
测试步骤 1. 点击「新增顶层菜单」2. 在上级菜单级联选择器中输入关键字搜索(如"首页"
预期结果 级联选择器按关键字过滤,可从中选择任意节点作为上级菜单
实际结果
测试状态 通过 / 未通过
问题描述

3.6 编辑菜单

TC-MENU-021编辑菜单—修改基本信息

项目 内容
测试步骤 1. 点击树中某个菜单节点加载编辑表单 2. 修改名称、别名 3. 修改排序号 4. 点击「修改」按钮
预期结果 提示"操作成功",树中该节点的名称和排序立即更新
实际结果
测试状态 通过 / 未通过
问题描述

TC-MENU-022编辑菜单—切换链接类型

项目 内容
测试步骤 1. 点击树中某个模块菜单节点 2. 切换链接类型为"外链" 3. 输入外部 URL 4. 点击「修改」
预期结果 提示"操作成功",菜单链接类型和外链 URL 保存成功
实际结果
测试状态 通过 / 未通过
问题描述

TC-MENU-023编辑菜单—设置导航属性

项目 内容
测试步骤 1. 点击树中某个菜单节点 2. 切换导航开关(开启→关闭 或 关闭→开启3. 点击「修改」
预期结果 提示"操作成功",导航属性更新(在侧边栏菜单渲染时相应生效)
实际结果
测试状态 通过 / 未通过
问题描述

TC-MENU-024编辑菜单—修改打开方式

项目 内容
测试步骤 1. 点击树中某个外链菜单 2. 切换打开方式为"新窗口" 3. 点击「修改」
预期结果 提示"操作成功",打开方式更新为在新标签页打开
实际结果
测试状态 通过 / 未通过
问题描述

3.7 删除菜单

TC-MENU-025删除菜单—确认弹框

项目 内容
测试步骤 鼠标悬停到某个菜单节点上,点击出现的「删除」按钮
预期结果 弹出确认提示框"确定要执行该操作吗?",有「确定」和「取消」按钮
实际结果
测试状态 通过 / 未通过
问题描述

TC-MENU-026删除菜单—成功

项目 内容
测试步骤 1. 悬停到叶子菜单节点上点击「删除」2. 在确认框中点击「确定」
预期结果 提示"操作成功",该菜单节点从树中消失
实际结果
测试状态 通过 / 未通过
问题描述

TC-MENU-027删除菜单—取消

项目 内容
测试步骤 1. 点击「删除」按钮 2. 在确认框中点击「取消」
预期结果 确认框关闭,菜单节点未被删除
实际结果
测试状态 通过 / 未通过
问题描述

3.8 启用/禁用菜单

TC-MENU-028禁用菜单—确认弹框

项目 内容
测试步骤 鼠标悬停到某个状态为启用的菜单节点上,点击出现的「禁用」按钮
预期结果 弹出确认提示框"状态的切换会影响上下级菜单,是否确认操作?"
实际结果
测试状态 通过 / 未通过
问题描述

TC-MENU-029禁用菜单—成功

项目 内容
测试步骤 1. 点击启用菜单的「禁用」按钮 2. 在确认框中点击「确定」
预期结果 提示"操作成功",树刷新后该节点显示为灰色+删除线的禁用样式
实际结果
测试状态 通过 / 未通过
问题描述

TC-MENU-030启用菜单—成功

项目 内容
测试步骤 1. 点击禁用菜单的「启用」按钮 2. 在确认框中点击「确定」
预期结果 提示"操作成功",树刷新后该节点恢复正常显示样式
实际结果
测试状态 通过 / 未通过
问题描述

3.9 拖拽排序

TC-MENU-031拖拽调整同级顺序

项目 内容
测试步骤 在同级菜单中,拖拽某个节点到另一个同级节点的上方或下方
预期结果 松手后触发排序 API同级节点的排序号自动更新页面刷新后顺序保持
实际结果
测试状态 通过 / 未通过
问题描述

TC-MENU-032拖拽移动到其他父级

项目 内容
测试步骤 拖拽某个菜单节点到另一个非同级父节点内部
预期结果 菜单移动到新父级下,页面刷新后位置保持
实际结果
测试状态 通过 / 未通过
问题描述

3.10 表单校验

TC-MENU-033别名长度校验

项目 内容
测试步骤 1. 新增或编辑菜单 2. 别名输入超过 16 个字符 3. 点击提交
预期结果 别名字段下方提示"长度不能大于 16 个字符"
实际结果
测试状态 通过 / 未通过
问题描述

TC-MENU-034URL 长度校验

项目 内容
测试步骤 1. 新增外链菜单 2. URL 输入超过 255 个字符 3. 点击提交
预期结果 URL 字段下方提示"长度不能大于 255 个字符"
实际结果
测试状态 通过 / 未通过
问题描述

TC-MENU-035排序号数字校验

项目 内容
测试步骤 1. 新增或编辑菜单 2. 排序号输入非数字字符 3. 点击提交
预期结果 排序号字段下方提示"必须为数字值"
实际结果
测试状态 通过 / 未通过
问题描述

3.11 多语言切换

TC-MENU-036切换到英文

项目 内容
测试步骤 1. 切换到英文语言 2. 查看菜单配置页面
预期结果 所有标签、按钮、表单字段名、提示信息均切换为英文显示
实际结果
测试状态 通过 / 未通过
问题描述

TC-MENU-037英文下操作正常

项目 内容
测试步骤 在英文界面下执行:切换模块、新增顶层菜单、新增子菜单、编辑菜单、删除菜单、启用/禁用、拖拽排序
预期结果 所有功能正常运行,提示信息为英文
实际结果
测试状态 通过 / 未通过
问题描述

四、接口日志功能测试

迁移日期2026-05-29
对应页面src/views/system-administration/system-utilities/api-logs/index.vue
API 文件src/api/system-administration/api-logs.js
路由路径/system_settings/system_assistant/interface_log
页面结构:顶部搜索区域 + 数据表格 + 查看响应弹框组件

4.1 页面加载与数据展示

TC-API-001接口日志页面正常加载

项目 内容
测试步骤 1. 登录系统 2. 点击菜单「系统设置 → 系统工具 → 接口日志」
预期结果 页面正常加载,显示接口日志列表表格,包含 ID、IP、请求方法、响应状态、响应时长、工序编码、托盘号、电池条码、批次号、进程ID、创建日期、操作列底部分页组件显示总条数
实际结果
测试状态 通过 / 未通过
问题描述

TC-API-002响应状态列显示正确

项目 内容
测试步骤 查看接口日志列表中各行的响应状态列
预期结果 状态为 0 时显示绿色 图标 + "成功"文字;状态非 0 时显示红色 图标 + "失败"文字
实际结果
测试状态 通过 / 未通过
问题描述

TC-API-003表格列完整显示

项目 内容
测试步骤 1. 观察表格列头 2. 横向滚动查看所有列
预期结果 表格包含以下列ID、IP、请求方法、响应状态、响应时长(毫秒)、工序编码、托盘号、电池条码、批次号、进程ID、创建日期、操作共 12 列),操作列固定在右侧
实际结果
测试状态 通过 / 未通过
问题描述

4.2 搜索筛选

TC-API-004按 IP 搜索

项目 内容
测试步骤 1. 在 IP 输入框输入已知 IP 地址 2. 点击「查询」按钮
预期结果 表格仅显示该 IP 来源的接口日志
实际结果
测试状态 通过 / 未通过
问题描述

TC-API-005按接口名称搜索

项目 内容
测试步骤 1. 在接口名称输入框输入关键字 2. 点击「查询」按钮
预期结果 表格按接口名称过滤,仅显示匹配的记录
实际结果
测试状态 通过 / 未通过
问题描述

TC-API-006按状态筛选

项目 内容
测试步骤 1. 在状态下拉框选择"成功" 2. 点击「查询」按钮
预期结果 表格仅显示响应状态为成功的日志记录
实际结果
测试状态 通过 / 未通过
问题描述

TC-API-007按批次搜索

项目 内容
测试步骤 1. 在批次输入框输入已知批次号 2. 点击「查询」按钮
预期结果 表格仅显示该批次的日志记录
实际结果
测试状态 通过 / 未通过
问题描述

TC-API-008按时间范围筛选

项目 内容
测试步骤 1. 在创建时间选择器中设置一个时间范围 2. 点击「查询」按钮
预期结果 表格仅显示该时间范围内的日志记录
实际结果
测试状态 通过 / 未通过
问题描述

TC-API-009组合搜索

项目 内容
测试步骤 1. 同时设置多个搜索条件(如 IP + 状态 + 时间范围2. 点击「查询」按钮
预期结果 表格按照所有条件的交集进行过滤显示
实际结果
测试状态 通过 / 未通过
问题描述

TC-API-010重置搜索条件

项目 内容
测试步骤 1. 设置多个搜索条件并查询 2. 点击「重置」按钮
预期结果 所有搜索条件清空,表格恢复显示全部数据(第一页)
实际结果
测试状态 通过 / 未通过
问题描述

4.3 分页功能

TC-API-011分页切换

项目 内容
测试步骤 1. 切换每页显示条数10 → 20 → 502. 点击下一页/上一页
预期结果 分页切换正常,表格数据按分页加载,总条数正确显示
实际结果
测试状态 通过 / 未通过
问题描述

4.4 查看响应

TC-API-012打开查看响应弹框

项目 内容
测试步骤 点击任一接口日志行操作列的「查看响应」按钮
预期结果 弹出"响应"弹框,显示两段内容:请求体和响应内容,均为 JSON 树形结构展示
实际结果
测试状态 通过 / 未通过
问题描述

TC-API-013复制请求内容

项目 内容
测试步骤 1. 打开查看响应弹框 2. 点击「复制请求内容」按钮
预期结果 请求体的 JSON 内容被复制到剪贴板,提示"操作成功"
实际结果
测试状态 通过 / 未通过
问题描述

TC-API-014复制响应内容

项目 内容
测试步骤 1. 打开查看响应弹框 2. 点击「复制响应内容」按钮
预期结果 响应内容的 JSON 被复制到剪贴板,提示"操作成功"
实际结果
测试状态 通过 / 未通过
问题描述

TC-API-015关闭响应弹框

项目 内容
测试步骤 1. 打开查看响应弹框 2. 点击弹框右上角 X 按钮或弹框遮罩层
预期结果 弹框关闭
实际结果
测试状态 通过 / 未通过
问题描述

TC-API-016响应弹框 JSON 树形展开/折叠

项目 内容
测试步骤 1. 打开查看响应弹框 2. 点击请求体或响应内容 JSON 树中的展开/折叠箭头
预期结果 JSON 节点可正常展开/折叠,嵌套数据层级清晰可见
实际结果
测试状态 通过 / 未通过
问题描述

TC-API-017切换不同行的响应数据

项目 内容
测试步骤 1. 点击第 1 行「查看响应」→ 记下内容后关闭 2. 点击第 3 行「查看响应」
预期结果 每次打开的弹框显示对应行的请求体和响应内容,数据不混淆
实际结果
测试状态 通过 / 未通过
问题描述

4.5 多语言切换

TC-API-018切换到英文

项目 内容
测试步骤 1. 切换到英文语言 2. 查看接口日志页面
预期结果 所有标签、按钮、表头、弹框标题均切换为英文显示;状态列显示 "Success" / "Failure"
实际结果
测试状态 通过 / 未通过
问题描述

TC-API-019英文下搜索功能正常

项目 内容
测试步骤 在英文界面下执行:按 IP 搜索、按状态筛选、查看响应、复制请求/响应内容
预期结果 所有功能正常运行,提示信息为英文
实际结果
测试状态 通过 / 未通过
问题描述

TC-API-020英文下查看响应弹框正常

项目 内容
测试步骤 1. 切换到英文 2. 点击「View Response」打开弹框
预期结果 弹框标题为 "Response",分隔标题为 "Request Body" / "Response Body",按钮文字为 "Copy Request" / "Copy Response"
实际结果
测试状态 通过 / 未通过
问题描述

五、操作日志功能测试

迁移日期2026-05-29
对应页面src/views/system-administration/system-utilities/operation-logs/index.vue
API 文件src/api/system-administration/operation-logs.js
路由路径/system_settings/system_assistant/operate_log
页面结构:折叠式搜索区 + 数据表格 + 查看响应弹框(复用)

5.1 页面加载与数据展示

TC-OPL-001操作日志页面正常加载

项目 内容
测试步骤 1. 登录系统 2. 点击菜单「系统设置 → 系统工具 → 操作日志」
预期结果 页面正常加载,显示操作日志列表表格,包含 ID、操作人、IP、状态、操作动作名称、操作动作编码、请求路径、批次、托盘号、创建日期、操作列底部显示分页组件和总条数
实际结果
测试状态 通过 / 未通过
问题描述

TC-OPL-002响应状态列显示正确

项目 内容
测试步骤 查看操作日志列表中各行的状态列
预期结果 状态为 0 时显示绿色 + "成功"文字;状态非 0 时显示红色 + "失败"文字
实际结果
测试状态 通过 / 未通过
问题描述

TC-OPL-003表格列完整显示

项目 内容
测试步骤 1. 观察表格列头 2. 横向滚动查看所有列
预期结果 表格包含以下列ID、操作人、IP、状态、操作动作名称、操作动作编码、请求路径、批次、托盘号、创建日期、操作共 11 列),操作列固定在右侧
实际结果
测试状态 通过 / 未通过
问题描述

5.2 搜索筛选

TC-OPL-004按 IP 搜索

项目 内容
测试步骤 1. 在 IP 输入框输入已知 IP 地址 2. 点击「查询」按钮
预期结果 表格仅显示该 IP 来源的操作日志
实际结果
测试状态 通过 / 未通过
问题描述

TC-OPL-005按操作人搜索

项目 内容
测试步骤 1. 在操作人下拉框选择一个用户 2. 点击「查询」按钮
预期结果 表格仅显示该操作人的日志;下拉框支持输入关键字搜索过滤
实际结果
测试状态 通过 / 未通过
问题描述

TC-OPL-006展开更多搜索条件

项目 内容
测试步骤 1. 点击「展开更多」按钮 2. 观察搜索区
预期结果 搜索区展开显示额外条件:批次、托盘号、创建时间(时间范围选择器);按钮变为「收起」图标向上
实际结果
测试状态 通过 / 未通过
问题描述

TC-OPL-007折叠搜索条件

项目 内容
测试步骤 1. 先展开搜索区 2. 点击「收起」按钮
预期结果 额外搜索条件隐藏,搜索区恢复为单行;按钮变回「展开更多」图标向下
实际结果
测试状态 通过 / 未通过
问题描述

TC-OPL-008组合搜索

项目 内容
测试步骤 1. 同时设置多个搜索条件(如 IP + 操作人 + 时间范围2. 点击「查询」按钮
预期结果 表格按照所有条件的交集进行过滤显示
实际结果
测试状态 通过 / 未通过
问题描述

TC-OPL-009重置搜索条件

项目 内容
测试步骤 1. 设置搜索条件并查询 2. 点击「重置」按钮
预期结果 所有搜索条件清空,下拉框恢复默认,表格恢复显示全部数据(第一页)
实际结果
测试状态 通过 / 未通过
问题描述

5.3 分页功能

TC-OPL-010分页切换

项目 内容
测试步骤 1. 切换每页显示条数10 → 20 → 502. 点击下一页/上一页
预期结果 分页切换正常,表格数据按分页加载,总条数正确显示
实际结果
测试状态 通过 / 未通过
问题描述

5.4 查看响应

TC-OPL-011打开查看响应弹框

项目 内容
测试步骤 点击任一操作日志行操作列的「查看响应」按钮
预期结果 弹出"响应"弹框,显示两段 JSON 树形结构:请求体和响应内容
实际结果
测试状态 通过 / 未通过
问题描述

TC-OPL-012复制请求内容

项目 内容
测试步骤 1. 打开查看响应弹框 2. 点击「复制请求内容」按钮
预期结果 请求体的 JSON 被复制到剪贴板,提示"操作成功"
实际结果
测试状态 通过 / 未通过
问题描述

TC-OPL-013复制响应内容

项目 内容
测试步骤 1. 打开查看响应弹框 2. 点击「复制响应内容」按钮
预期结果 响应内容的 JSON 被复制到剪贴板,提示"操作成功"
实际结果
测试状态 通过 / 未通过
问题描述

TC-OPL-014关闭响应弹框

项目 内容
测试步骤 1. 打开查看响应弹框 2. 点击弹框右上角 X 或遮罩层
预期结果 弹框关闭
实际结果
测试状态 通过 / 未通过
问题描述

5.5 多语言切换

TC-OPL-015切换到英文

项目 内容
测试步骤 1. 切换到英文语言 2. 查看操作日志页面
预期结果 所有标签、按钮、表头、弹框均切换为英文;状态列显示 "Success" / "Failure"
实际结果
测试状态 通过 / 未通过
问题描述

TC-OPL-016英文下搜索功能正常

项目 内容
测试步骤 在英文界面下执行:按 IP 搜索、按操作人筛选、展开/收起搜索区
预期结果 所有功能正常运行,提示信息为英文;操作人下拉框显示英文用户名
实际结果
测试状态 通过 / 未通过
问题描述

TC-OPL-017英文下查看响应弹框正常

项目 内容
测试步骤 1. 切换到英文 2. 点击「View Response」打开弹框
预期结果 弹框标题 "Response",分隔标题 "Request Body" / "Response Content",按钮 "Copy Request Content" / "Copy Response Content"
实际结果
测试状态 通过 / 未通过
问题描述

TC-OPL-018表格无选中框

项目 内容
测试步骤 查看操作日志表格的左侧
预期结果 表格左侧无复选框选中列(只读页面,无需批量操作)
实际结果
测试状态 通过 / 未通过
问题描述

六、问题帮助功能测试

迁移日期2026-05-29
对应页面src/views/system-administration/system-utilities/problem-help/index.vue
API 文件src/api/system-administration/problem-help.js
路由路径/system_settings/system_assistant/problem_help
页面结构:搜索区 + 左侧树形菜单 + 右侧 Markdown 预览 + 分类弹框 + 文档编辑抽屉

6.1 页面加载与数据展示

TC-PHP-001问题帮助页面正常加载

项目 内容
测试前置条件 系统中已存在问题帮助的分类目录和文档数据
测试步骤 1. 登录系统 2. 点击菜单「系统设置 → 系统工具 → 问题帮助」
预期结果 页面正常加载,左侧显示树形分类菜单,右侧显示空白提示"请从左侧菜单选择文档查看"
实际结果
测试状态 通过 / 未通过
问题描述

TC-PHP-002树形菜单展示完整

项目 内容
测试步骤 观察左侧树形菜单
预期结果 菜单以树形层级结构展示所有分类目录和文档节点md 类型文档显示文件夹图标 📁file 类型文档显示文件图标 📄
实际结果
测试状态 通过 / 未通过
问题描述

TC-PHP-003点击文档查看内容

项目 内容
测试前置条件 树形菜单中存在 md 类型的文档
测试步骤 1. 展开树形菜单的分类目录 2. 点击一个 md 文档节点
预期结果 右侧区域显示 Markdown 渲染后的文档内容,包含标题、提交人、创建时间信息
实际结果
测试状态 通过 / 未通过
问题描述

TC-PHP-004树菜单展开/折叠

项目 内容
测试步骤 1. 点击一个分类目录展开其子节点 2. 点击另一个分类目录
预期结果 树形菜单支持唯一展开(展开新分类时旧分类自动收起),子节点列表正常显示
实际结果
测试状态 通过 / 未通过
问题描述

6.2 搜索功能

TC-PHP-005搜索文档

项目 内容
测试前置条件 系统中存在包含搜索关键字的文档
测试步骤 1. 在顶部搜索框输入文档标题关键字 2. 点击搜索按钮或按 Enter
预期结果 如果查找结果存在数据,左侧树形菜单上方出现搜索结果卡片区域,显示匹配的文档标题和描述;如果没有匹配数据,无结果展示
实际结果
测试状态 通过 / 未通过
问题描述

TC-PHP-006清除搜索结果

项目 内容
测试步骤 1. 执行搜索出现结果后 2. 点击搜索输入框的清除按钮
预期结果 搜索结果区域消失,恢复显示树形菜单
实际结果
测试状态 通过 / 未通过
问题描述

TC-PHP-007搜索空内容

项目 内容
测试步骤 不输入任何内容,直接点击搜索按钮
预期结果 搜索结果区域清空 / 不出现搜索结果
实际结果
测试状态 通过 / 未通过
问题描述

6.3 分类目录管理

TC-PHP-008新增分类目录

项目 内容
测试步骤 1. 点击搜索框旁的「新增目录」按钮 2. 在弹框中填写分类名称 3. 选择上级菜单可选4. 选择查看权限角色 5. 设置序号 6. 点击「确定」
预期结果 提示"添加成功",弹框关闭,树形菜单中显示新分类
实际结果
测试状态 通过 / 未通过
问题描述

TC-PHP-009编辑分类目录

项目 内容
测试前置条件 先在树形菜单上选中一个分类目录
测试步骤 1. 点击树形菜单中的一个分类节点使其被选中 2. 点击左侧工具栏的「编辑」按钮 3. 修改分类名称 4. 点击「修改」
预期结果 提示"修改成功",弹框关闭,树形菜单中的分类名称更新
实际结果
测试状态 通过 / 未通过
问题描述

TC-PHP-010删除分类目录

项目 内容
测试前置条件 先在树形菜单上选中一个分类目录
测试步骤 1. 点击分类节点使其选中 2. 点击「删除」按钮 3. 确认删除弹框
预期结果 删除确认弹框出现,确认后提示"删除成功",树形菜单刷新
实际结果
测试状态 通过 / 未通过
问题描述

TC-PHP-011未选中分类时编辑/删除提示

项目 内容
测试步骤 1. 不选中任何树节点 2. 直接点击「编辑」或「删除」按钮
预期结果 弹出提示"请先选择需要编辑的目录"或"请先选择需要删除的目录"
实际结果
测试状态 通过 / 未通过
问题描述

TC-PHP-012取消删除操作

项目 内容
测试步骤 1. 选中分类后点击「删除」2. 在确认弹框中点击「取消」
预期结果 删除操作取消,分类不丢失
实际结果
测试状态 通过 / 未通过
问题描述

6.4 文档管理

TC-PHP-013新增文档

项目 内容
测试步骤 1. 点击左侧工具栏「新增文档」2. 在抽屉中填写标题、描述 3. 选择上级分类菜单 4. 选择权限角色 5. 设置序号 6. 在 Markdown 编辑器中输入内容 7. 点击「新增」
预期结果 提示"新增成功",抽屉关闭,树形菜单中显示新文档
实际结果
测试状态 通过 / 未通过
问题描述

TC-PHP-014编辑文档

项目 内容
测试步骤 1. 在树形菜单中找到 md 文档节点 2. 点击文档右侧的「编辑」按钮
预期结果 打开编辑抽屉,回填该文档的标题、描述、分类、内容等数据
实际结果
测试状态 通过 / 未通过
问题描述

TC-PHP-015删除文档

项目 内容
测试步骤 1. 在树形菜单中文档节点右侧点击「删除」2. 确认删除
预期结果 弹出确认框,确认后提示"删除成功",树形菜单刷新
实际结果
测试状态 通过 / 未通过
问题描述

TC-PHP-016编辑抽屉关闭确认

项目 内容
测试步骤 1. 打开新增文档抽屉并填写部分内容 2. 直接点击抽屉遮罩层或右上角 X 关闭
预期结果 弹出"确认关闭?"确认框,确认后抽屉关闭,表单重置
实际结果
测试状态 通过 / 未通过
问题描述

TC-PHP-017文档表单验证

项目 内容
测试步骤 1. 打开新增文档抽屉 2. 不填写标题直接点击「新增」
预期结果 表单验证提示"请输入标题"和"请输入描述",阻止提交
实际结果
测试状态 通过 / 未通过
问题描述

6.5 多语言切换

TC-PHP-018切换到英文

项目 内容
测试步骤 1. 切换到英文语言 2. 查看问题帮助页面
预期结果 所有标签、按钮、弹框标题均切换为英文;工具栏显示 "Add Directory"、"Add Document"、"Edit"、"Delete"
实际结果
测试状态 通过 / 未通过
问题描述

TC-PHP-019英文下搜索功能正常

项目 内容
测试步骤 在英文界面下执行:搜索文档、查看搜索结果、清除搜索
预期结果 所有功能正常运行,提示信息为英文
实际结果
测试状态 通过 / 未通过
问题描述

TC-PHP-020英文下分类弹框正常

项目 内容
测试步骤 1. 切换到英文 2. 点击「Add Directory」打开分类弹框
预期结果 弹框标题为 "Add Category" 或 "Edit Category",表单字段标签为英文,底部按钮为 "Confirm" / "Cancel"
实际结果
测试状态 通过 / 未通过
问题描述

TC-PHP-021英文下Markdown编辑器正常

项目 内容
测试步骤 1. 切换到英文 2. 点击「Add Document」打开编辑器抽屉
预期结果 抽屉标题和表单标签为英文;验证提示信息为英文
实际结果
测试状态 通过 / 未通过
问题描述

测试结果汇总

功能模块 测试用例数 通过 未通过 通过率
角色管理 24
用户管理 33
菜单配置 37
接口日志 20
操作日志 18
问题帮助 21
合计 153

版本记录

  • v1.0 (2026-05-28)初始版本包含角色管理功能24 条用例)
  • v1.1 (2026-05-28)追加用户管理功能33 条用例)
  • v1.2 (2026-05-29)追加菜单配置功能37 条用例)
  • v1.3 (2026-05-29)追加接口日志功能20 条用例)
  • v1.4 (2026-05-29)追加操作日志功能18 条用例)
  • v1.5 (2026-05-29)追加问题帮助功能21 条用例)