# 功能测试用例 **创建日期**:2025-01-28 **测试范围**:数据库客户端核心功能 --- ## 一、连接管理测试 ### TC-001: 创建数据库连接 **前置条件**: - 应用已启动 - 数据库服务可访问 **测试步骤**: 1. 点击"新建连接"按钮 2. 填写连接信息(名称、类型、主机、端口、用户名、密码、数据库) 3. 点击"测试连接"验证连接 4. 点击"保存" **预期结果**: - ✅ 连接创建成功 - ✅ 连接出现在连接树中 - ✅ 可以选中连接 **优先级**:P0 --- ### TC-002: 编辑数据库连接 **前置条件**: - 已存在至少一个连接 **测试步骤**: 1. 右键点击连接节点 2. 选择"编辑连接" 3. 修改连接信息 4. 点击"保存" **预期结果**: - ✅ 连接信息更新成功 - ✅ 连接树中显示更新后的信息 **优先级**:P0 --- ### TC-003: 删除数据库连接 **前置条件**: - 已存在至少一个连接 **测试步骤**: 1. 右键点击连接节点 2. 选择"删除连接" 3. 确认删除 **预期结果**: - ✅ 连接删除成功 - ✅ 连接从连接树中移除 **优先级**:P0 --- ### TC-004: 连接列表加载 **前置条件**: - 已存在至少一个连接 **测试步骤**: 1. 启动应用 2. 查看连接树 **预期结果**: - ✅ 连接列表自动加载 - ✅ 所有连接正确显示 **优先级**:P0 --- ## 二、SQL执行测试 ### TC-005: MySQL查询执行 **前置条件**: - 已创建MySQL连接 - 已选中连接和数据库 **测试步骤**: 1. 在SQL编辑器中输入:`SELECT * FROM table_name LIMIT 10;` 2. 点击"执行"按钮 **预期结果**: - ✅ SQL执行成功 - ✅ 结果在结果面板中显示 - ✅ 结果格式正确(表格) **优先级**:P0 --- ### TC-006: Redis命令执行 **前置条件**: - 已创建Redis连接 - 已选中连接和数据库 **测试步骤**: 1. 在SQL编辑器中输入:`KEYS *` 2. 点击"执行"按钮 **预期结果**: - ✅ 命令执行成功 - ✅ 结果在结果面板中显示 - ✅ 结果格式正确(列表或表格) **优先级**:P0 --- ### TC-007: MongoDB查询执行 **前置条件**: - 已创建MongoDB连接 - 已选中连接和数据库 **测试步骤**: 1. 在SQL编辑器中输入:`db.collection.find({})` 2. 点击"执行"按钮 **预期结果**: - ✅ 查询执行成功 - ✅ 结果在结果面板中显示 - ✅ 结果格式正确(JSON) **优先级**:P0 --- ### TC-008: SQL执行错误处理 **前置条件**: - 已创建连接并选中 **测试步骤**: 1. 在SQL编辑器中输入错误的SQL:`SELECT * FROM non_existent_table;` 2. 点击"执行"按钮 **预期结果**: - ✅ 错误信息在结果面板中显示 - ✅ 错误信息清晰明确 - ✅ 应用不崩溃 **优先级**:P0 --- ## 三、表结构查看测试 ### TC-009: MySQL表结构查看 **前置条件**: - 已创建MySQL连接 - 已选中连接和数据库 - 数据库中存在表 **测试步骤**: 1. 右键点击表节点 2. 选择"查看结构" 3. 查看结构面板 **预期结果**: - ✅ 表结构信息正确显示 - ✅ 字段信息完整(字段名、类型、允许NULL、键、默认值、额外) - ✅ 索引信息完整(索引名、列名、唯一、类型) **优先级**:P0 --- ### TC-010: MongoDB集合结构查看 **前置条件**: - 已创建MongoDB连接 - 已选中连接和数据库 - 数据库中存在集合 **测试步骤**: 1. 右键点击集合节点 2. 选择"查看结构" 3. 查看结构面板 **预期结果**: - ✅ 集合结构信息正确显示 - ✅ 文档总数显示 - ✅ 字段统计信息显示(基于采样) - ✅ 文档示例显示 - ✅ 索引信息显示 **优先级**:P0 --- ### TC-011: Redis Key信息查看 **前置条件**: - 已创建Redis连接 - 已选中连接和数据库 - 数据库中存在Key **测试步骤**: 1. 右键点击Key节点 2. 选择"查看结构" 3. 查看结构面板 **预期结果**: - ✅ Key信息正确显示 - ✅ Key类型显示 - ✅ TTL显示 - ✅ 长度显示 - ✅ 值预览显示 **优先级**:P0 --- ## 四、右键菜单测试 ### TC-012: 连接节点右键菜单 **前置条件**: - 已存在至少一个连接 **测试步骤**: 1. 右键点击连接节点 2. 查看菜单项 **预期结果**: - ✅ 菜单正确显示 - ✅ 菜单项包括:查看结构、编辑连接、删除连接、刷新、测试连接 - ✅ 菜单定位在鼠标位置 - ✅ 点击菜单项后菜单关闭 **优先级**:P0 --- ### TC-013: 数据库节点右键菜单 **前置条件**: - 已存在连接并展开数据库 **测试步骤**: 1. 右键点击数据库节点 2. 查看菜单项 **预期结果**: - ✅ 菜单正确显示 - ✅ 菜单项根据数据库类型显示(MySQL/MongoDB/Redis) - ✅ 菜单定位在鼠标位置 **优先级**:P0 --- ### TC-014: 表节点右键菜单 **前置条件**: - 已存在连接并展开到表节点 **测试步骤**: 1. 右键点击表节点 2. 查看菜单项 **预期结果**: - ✅ 菜单正确显示 - ✅ 菜单项包括:查看结构、生成SELECT语句、复制表名、刷新 - ✅ 菜单定位在鼠标位置 **优先级**:P0 --- ### TC-015: 菜单项功能测试 **前置条件**: - 已存在连接和表 **测试步骤**: 1. 右键点击表节点 2. 依次点击各菜单项 **预期结果**: - ✅ "查看结构":切换到结构面板并显示表结构 - ✅ "生成SELECT语句":在SQL编辑器中生成SELECT语句 - ✅ "复制表名":表名复制到剪贴板 - ✅ "刷新":刷新表列表 **优先级**:P0 --- ## 五、SQL编辑器测试 ### ~~TC-016: 多Tab编辑器~~ ⚠️ 暂时移除 **状态**:多Tab支持暂时移除,仅保留一个SQL编辑区 **说明**:功能将在后续版本恢复 --- ### TC-017: SQL自动保存 **前置条件**: - 已创建连接 - 已打开SQL编辑器 **测试步骤**: 1. 在SQL编辑器中输入SQL 2. 等待几秒 3. 刷新页面或重新打开应用 **预期结果**: - ✅ SQL内容自动保存 - ✅ 重新打开后SQL内容恢复 **优先级**:P1 --- ## 六、结果面板测试 ### TC-018: 结果显示 **前置条件**: - 已执行SQL查询 **测试步骤**: 1. 执行查询 2. 查看结果面板 **预期结果**: - ✅ 结果正确显示 - ✅ 结果格式正确(表格/JSON/列表) - ✅ 可以切换"结果"和"消息"Tab - ✅ 可以切换"结果"和"结构"Tab **优先级**:P0 --- ### TC-019: 大数据量结果 **前置条件**: - 已创建连接 - 表中存在大量数据 **测试步骤**: 1. 执行查询大量数据的SQL 2. 查看结果面板 **预期结果**: - ✅ 结果正确显示 - ✅ 性能可接受(不卡顿) - ✅ 可以分页或滚动查看 **优先级**:P1 --- ## 七、测试连接功能测试 ### TC-020: 右键菜单测试连接 **前置条件**: - 已存在至少一个连接 **测试步骤**: 1. 右键点击连接节点 2. 选择"测试连接" **预期结果**: - ✅ 显示测试结果(成功/失败) - ✅ 成功时显示"连接测试成功" - ✅ 失败时显示错误信息 **优先级**:P0 --- ## 八、书签和模板测试 ❌ 已废弃 **说明**:书签和模板功能已删除,以下测试用例已废弃。 ### TC-021: 书签管理 ❌ 已废弃 **状态**:功能已删除 ### TC-022: SQL模板管理 ❌ 已废弃 **状态**:功能已删除 --- ## 九、测试检查清单 ### 功能测试 - [ ] TC-001: 创建数据库连接 - [ ] TC-002: 编辑数据库连接 - [ ] TC-003: 删除数据库连接 - [ ] TC-004: 连接列表加载 - [ ] TC-005: MySQL查询执行 - [ ] TC-006: Redis命令执行 - [ ] TC-007: MongoDB查询执行 - [ ] TC-008: SQL执行错误处理 - [ ] TC-009: MySQL表结构查看 - [ ] TC-010: MongoDB集合结构查看 - [ ] TC-011: Redis Key信息查看 - [ ] TC-012: 连接节点右键菜单 - [ ] TC-013: 数据库节点右键菜单 - [ ] TC-014: 表节点右键菜单 - [ ] TC-015: 菜单项功能测试 - [ ] ~~TC-016: 多Tab编辑器~~(暂时移除,仅保留一个编辑区) - [ ] TC-017: SQL自动保存 - [ ] TC-018: 结果显示 - [ ] TC-019: 大数据量结果 - [ ] TC-020: 右键菜单测试连接 - [ ] ~~TC-021: 书签管理~~(已废弃,功能已删除) - [ ] ~~TC-022: SQL模板管理~~(已废弃,功能已删除) ### 集成测试 - [ ] 连接管理 → SQL执行流程 - [ ] 右键菜单 → 表结构查看流程 - [ ] SQL执行 → 结果显示流程 ### 性能测试 - [ ] 大数据量查询性能 - [ ] ~~多Tab编辑器性能~~(暂时移除) - [ ] 连接列表加载性能 --- ## 十、测试环境 ### 数据库环境 - MySQL 8.0+ - Redis 6.0+ - MongoDB 4.4+ ### 测试数据 - MySQL:至少包含一个数据库和一个表 - Redis:至少包含一个Key - MongoDB:至少包含一个集合 --- ## 十一、测试报告 **测试日期**:待填写 **测试人员**:待填写 **测试结果**:待填写