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