为满足算法推算、多维度统计及算法因子存储需求,以下是全模块完整数据库表结构设计,在原有基础上补充了量化指标、时间轨迹、关联链路、算法中间结果等字段,确保每个表字段足够支撑复杂算法场景(如缺陷趋势预测、测试覆盖率计算、任务智能分配等)。
一、基础通用表(支撑全模块算法基础)
1.1 用户表(sys_user)
| 字段名 |
数据类型 |
长度 |
主键/外键 |
非空 |
备注说明(算法用途) |
| id |
BIGINT |
- |
主键 |
是 |
用户唯一标识,关联所有操作记录 |
| username |
VARCHAR |
50 |
唯一 |
是 |
登录账号,用于用户身份匹配 |
| password |
VARCHAR |
100 |
- |
是 |
加密存储(MD5+盐值),不参与算法计算 |
| real_name |
VARCHAR |
50 |
- |
是 |
用户真实姓名,用于任务分配显示 |
| role_id |
BIGINT |
- |
外键 |
是 |
关联sys_role表,用于权限算法过滤数据 |
| group_id |
BIGINT |
- |
外键 |
否 |
关联sys_group表,用于小组维度统计算法 |
| status |
TINYINT |
- |
- |
是 |
账号状态(0=禁用,1=正常),算法过滤无效用户数据 |
| last_login_time |
DATETIME |
- |
- |
否 |
最后登录时间,用于活跃用户识别算法 |
| email |
VARCHAR |
100 |
唯一 |
否 |
联系邮箱,用于通知算法触发 |
| phone |
VARCHAR |
20 |
唯一 |
否 |
手机号,同上 |
| user_tags |
VARCHAR |
200 |
- |
否 |
用户标签(如“自动化专家,性能测试”),用于任务角色匹配算法 |
| operation_score |
DECIMAL(5,2) |
- |
- |
是 |
操作评分(0-100分,基于用例准确率、缺陷质量计算),用于任务优先级分配算法 |
| login_frequency |
INT |
- |
- |
是 |
月登录次数,用于用户活跃度统计算法 |
| avg_task_duration |
INT |
- |
- |
是 |
平均任务耗时(小时),用于任务工时预估算法 |
| create_time |
DATETIME |
- |
- |
是 |
创建时间,用于用户成长周期算法 |
| update_time |
DATETIME |
- |
- |
是 |
更新时间,用于数据变更轨迹算法 |
| create_user_id |
BIGINT |
- |
外键 |
是 |
关联sys_user表,用于操作溯源算法 |
| is_delete |
TINYINT |
- |
- |
是 |
软删除标识(0=未删,1=已删),算法过滤删除数据 |
1.2 角色表(sys_role)
| 字段名 |
数据类型 |
长度 |
主键/外键 |
非空 |
备注说明(算法用途) |
| id |
BIGINT |
- |
主键 |
是 |
角色唯一标识,关联权限算法 |
| role_name |
VARCHAR |
50 |
唯一 |
是 |
角色名称,用于权限显示 |
| role_desc |
VARCHAR |
200 |
- |
否 |
角色描述,不参与算法计算 |
| role_weight |
INT |
- |
- |
是 |
角色权重(1-10),用于数据权限优先级算法(权重高可查看更多数据) |
| user_count |
INT |
- |
- |
是 |
关联用户数,用于角色使用频率统计算法 |
| create_time |
DATETIME |
- |
- |
是 |
创建时间,用于角色生命周期算法 |
| update_time |
DATETIME |
- |
- |
是 |
更新时间,用于角色变更轨迹算法 |
| create_user_id |
BIGINT |
- |
外键 |
是 |
关联sys_user表,用于操作溯源算法 |
| is_delete |
TINYINT |
- |
- |
是 |
软删除标识,算法过滤删除数据 |
1.3 权限表(sys_permission)
| 字段名 |
数据类型 |
长度 |
主键/外键 |
非空 |
备注说明(算法用途) |
| id |
BIGINT |
- |
主键 |
是 |
权限唯一标识,关联权限校验算法 |
| permission_name |
VARCHAR |
50 |
唯一 |
是 |
权限名称,用于权限显示 |
| permission_type |
TINYINT |
- |
- |
是 |
权限类型(1=菜单,2=按钮),用于权限分类算法 |
| parent_id |
BIGINT |
- |
外键 |
是 |
父权限ID,用于权限树形结构算法 |
| menu_url |
VARCHAR |
200 |
- |
否 |
菜单URL,用于页面权限跳转算法 |
| permission_code |
VARCHAR |
50 |
唯一 |
是 |
权限标识(如“sys:user:add”),用于代码层权限校验算法 |
| sort |
INT |
- |
- |
是 |
排序号,用于菜单显示顺序算法 |
| is_show |
TINYINT |
- |
- |
是 |
是否显示(0=隐藏,1=显示),用于菜单展示算法 |
| role_bind_count |
INT |
- |
- |
是 |
关联角色数,用于权限使用频率统计算法 |
| create_time |
DATETIME |
- |
- |
是 |
创建时间,用于权限生命周期算法 |
| update_time |
DATETIME |
- |
- |
是 |
更新时间,用于权限变更轨迹算法 |
| is_delete |
TINYINT |
- |
- |
是 |
软删除标识,算法过滤删除数据 |
1.4 角色-权限关联表(sys_role_permission)
| 字段名 |
数据类型 |
长度 |
主键/外键 |
非空 |
备注说明(算法用途) |
| id |
BIGINT |
- |
主键 |
是 |
关联记录唯一标识,用于权限关联溯源算法 |
| role_id |
BIGINT |
- |
外键 |
是 |
关联sys_role表,用于角色-权限匹配算法 |
| permission_id |
BIGINT |
- |
外键 |
是 |
关联sys_permission表,同上 |
| bind_time |
DATETIME |
- |
- |
是 |
绑定时间,用于权限变更时间序列算法 |
| update_user_id |
BIGINT |
- |
外键 |
是 |
关联sys_user表,用于权限变更溯源算法 |
| create_time |
DATETIME |
- |
- |
是 |
创建时间,用于记录生命周期算法 |
1.5 系统配置表(sys_config)
| 字段名 |
数据类型 |
长度 |
主键/外键 |
非空 |
备注说明(算法用途) |
| id |
BIGINT |
- |
主键 |
是 |
配置唯一标识,用于配置匹配算法 |
| config_type |
TINYINT |
- |
- |
是 |
配置类型(1=基础,2=邮件,3=日志,4=算法参数),用于配置分类算法 |
| config_key |
VARCHAR |
50 |
唯一 |
是 |
配置键(如“algorithm_bug_weight”),用于算法参数读取 |
| config_value |
VARCHAR |
500 |
- |
是 |
配置值(如“高:0.6,中:0.3,低:0.1”),用于算法动态参数计算 |
| config_desc |
VARCHAR |
200 |
- |
否 |
配置描述,用于配置说明 |
| algorithm_param |
TEXT |
- |
- |
否 |
算法参数JSON(如“{风险预警阈值:80,覆盖率目标:95}”),用于复杂算法参数存储 |
| stat_cycle |
INT |
- |
- |
是 |
默认统计周期(天),用于周期统计算法默认参数 |
| data_expire_days |
INT |
- |
- |
是 |
数据过期天数,用于算法数据清理规则 |
| update_count |
INT |
- |
- |
是 |
更新次数,用于配置变更频率算法 |
| create_time |
DATETIME |
- |
- |
是 |
创建时间,用于配置生命周期算法 |
| update_time |
DATETIME |
- |
- |
是 |
更新时间,用于配置变更轨迹算法 |
| update_user_id |
BIGINT |
- |
外键 |
是 |
关联sys_user表,用于配置变更溯源算法 |
二、项目管理模块表(支撑项目维度算法)
2.1 项目分类表(project_category)
| 字段名 |
数据类型 |
长度 |
主键/外键 |
非空 |
备注说明(算法用途) |
| id |
BIGINT |
- |
主键 |
是 |
分类唯一标识,用于分类维度统计算法 |
| category_name |
VARCHAR |
50 |
唯一 |
是 |
分类名称,用于分类显示 |
| category_desc |
VARCHAR |
200 |
- |
否 |
分类描述,不参与算法计算 |
| sort |
INT |
- |
- |
是 |
排序号,用于分类显示顺序算法 |
| project_count |
INT |
- |
- |
是 |
关联项目数,用于分类热度统计算法 |
| avg_project_cycle |
INT |
- |
- |
是 |
平均项目周期(天),用于项目周期预估算法 |
| create_time |
DATETIME |
- |
- |
是 |
创建时间,用于分类生命周期算法 |
| update_time |
DATETIME |
- |
- |
是 |
更新时间,用于分类变更轨迹算法 |
| create_user_id |
BIGINT |
- |
外键 |
是 |
关联sys_user表,用于操作溯源算法 |
| is_delete |
TINYINT |
- |
- |
是 |
软删除标识,算法过滤删除数据 |
2.2 项目表(project)
推演:空字段 且 为 int 类型数据,由 nan 设置为 0
| 字段名 |
数据类型 |
长度 |
主键/外键 |
非空 |
备注说明(算法用途) |
| id |
BIGINT |
- |
主键 |
是 |
项目唯一标识,关联所有项目子模块数据 |
| project_name |
VARCHAR |
100 |
唯一 |
是 |
项目名称,用于项目显示 |
| category_id |
BIGINT |
- |
外键 |
是 |
关联project_category表,用于分类维度算法 |
| leader_id |
BIGINT |
- |
外键 |
是 |
关联sys_user表,用于负责人维度统计算法 |
| status |
TINYINT |
- |
- |
是 |
状态(0=待启动,1=进行中,2=已归档,3=已终止),用于项目状态分布算法 |
| start_time |
DATE |
- |
- |
否 |
启动时间,用于项目周期计算算法 |
| end_time |
DATE |
- |
- |
否 |
预计结束时间,用于进度延迟推算算法(当前日期-预计时间) |
| actual_end_time |
DATE |
- |
- |
否 |
实际结束时间,用于项目周期统计(实际时间-启动时间) |
| project_desc |
VARCHAR |
500 |
- |
否 |
项目描述,不参与算法计算 |
| planned_workload |
INT |
- |
- |
是 |
计划工作量(人天),用于进度完成率算法(实际工作量/计划工作量) |
| actual_workload |
INT |
- |
- |
是 |
实际工作量(人天),同上 |
| risk_level |
TINYINT |
- |
- |
是 |
风险等级(1-5级,基于延迟天数、缺陷密度计算),用于风险预警算法 |
| delay_days |
INT |
- |
- |
是 |
进度延迟天数(算法计算:当前日期-预计end_time),用于进度风险算法 |
| test_coverage |
DECIMAL(5,2) |
- |
- |
是 |
测试覆盖率(%,已覆盖需求数/总需求数),用于质量评估算法 |
| bug_density |
DECIMAL(6,2) |
- |
- |
是 |
缺陷密度(缺陷数/千行代码),用于项目质量算法 |
| case_execution_rate |
DECIMAL(5,2) |
- |
- |
是 |
用例执行率(%,已执行用例数/总用例数),用于测试进度算法 |
| create_time |
DATETIME |
- |
- |
是 |
创建时间,用于项目生命周期算法 |
| update_time |
DATETIME |
- |
- |
是 |
更新时间,用于项目变更轨迹算法 |
| create_user_id |
BIGINT |
- |
外键 |
是 |
关联sys_user表,用于操作溯源算法 |
| is_delete |
TINYINT |
- |
- |
是 |
软删除标识,算法过滤删除数据 |
2.3 项目-成员关联表(project_member)
| 字段名 |
数据类型 |
长度 |
主键/外键 |
非空 |
备注说明(算法用途) |
| id |
BIGINT |
- |
主键 |
是 |
关联记录唯一标识,用于成员关联溯源算法 |
| project_id |
BIGINT |
- |
外键 |
是 |
关联project表,用于项目-成员匹配算法 |
| user_id |
BIGINT |
- |
外键 |
是 |
关联sys_user表,同上 |
| member_role |
VARCHAR |
50 |
- |
是 |
成员角色(如“测试负责人”),用于角色维度统计算法 |
| join_time |
DATETIME |
- |
- |
是 |
加入时间,用于成员参与时长算法(当前时间-加入时间) |
| leave_time |
DATETIME |
- |
- |
否 |
离开时间,用于成员参与周期算法(离开时间-加入时间) |
| task_count |
INT |
- |
- |
是 |
负责任务数,用于成员负载统计算法 |
| completed_task_rate |
DECIMAL(5,2) |
- |
- |
是 |
任务完成率(%,已完成任务数/总任务数),用于成员效率评估算法 |
| avg_task_score |
DECIMAL(5,2) |
- |
- |
是 |
任务平均评分(0-10分),用于成员能力评估算法 |
| create_time |
DATETIME |
- |
- |
是 |
创建时间,用于记录生命周期算法 |
| is_delete |
TINYINT |
- |
- |
是 |
软删除标识,算法过滤删除数据 |
2.4 项目仓库表(project_repository)
| 字段名 |
数据类型 |
长度 |
主键/外键 |
非空 |
备注说明(算法用途) |
| id |
BIGINT |
- |
主键 |
是 |
文件唯一标识,用于文件溯源算法 |
| project_id |
BIGINT |
- |
外键 |
是 |
关联project表,用于项目-文件匹配算法 |
| file_name |
VARCHAR |
200 |
- |
是 |
文件名,用于文件识别 |
| file_path |
VARCHAR |
500 |
- |
是 |
存储路径,用于文件读取算法 |
| file_size |
BIGINT |
- |
- |
是 |
文件大小(字节),用于仓库容量统计算法 |
| file_type |
VARCHAR |
50 |
- |
是 |
文件类型(如“doc”“pdf”),用于文件分类统计算法 |
| file_md5 |
VARCHAR |
100 |
唯一 |
是 |
文件MD5值,用于文件去重算法 |
| upload_user_id |
BIGINT |
- |
外键 |
是 |
关联sys_user表,用于上传人维度算法 |
| upload_time |
DATETIME |
- |
- |
是 |
上传时间,用于文件时间序列算法 |
| download_count |
INT |
- |
- |
是 |
下载次数,用于文件热度统计算法 |
| last_download_time |
DATETIME |
- |
- |
否 |
最后下载时间,用于文件活跃性算法 |
| version |
INT |
- |
- |
是 |
文件版本号,用于版本管理算法 |
| create_time |
DATETIME |
- |
- |
是 |
创建时间,用于文件生命周期算法 |
| is_delete |
TINYINT |
- |
- |
是 |
软删除标识,算法过滤删除数据 |
2.5 任务表(project_task)
| 字段名 |
数据类型 |
长度 |
主键/外键 |
非空 |
备注说明(算法用途) |
| id |
BIGINT |
- |
主键 |
是 |
任务唯一标识,关联任务所有数据 |
| project_id |
BIGINT |
- |
外键 |
是 |
关联project表,用于项目-任务匹配算法 |
| task_title |
VARCHAR |
200 |
- |
是 |
任务标题,用于任务显示 |
| task_content |
TEXT |
- |
- |
否 |
任务详情,不参与算法计算 |
| status_id |
BIGINT |
- |
外键 |
是 |
关联task_status表,用于任务状态分布算法 |
| priority |
TINYINT |
- |
- |
是 |
优先级(1=低,2=中,3=高,4=紧急),用于任务调度算法 |
| assignee_id |
BIGINT |
- |
外键 |
是 |
关联sys_user表,用于负责人维度算法 |
| start_time |
DATE |
- |
- |
否 |
开始时间,用于任务周期计算算法 |
| end_time |
DATE |
- |
- |
是 |
截止时间,用于任务延迟风险算法(当前日期-截止时间) |
| finish_time |
DATETIME |
- |
- |
否 |
完成时间,用于任务耗时算法(完成时间-分配时间) |
| assign_time |
DATETIME |
- |
- |
是 |
分配时间,用于任务响应时长算法(首次处理时间-分配时间) |
| first_process_time |
DATETIME |
- |
- |
否 |
首次处理时间,同上 |
| task_workload |
INT |
- |
- |
是 |
任务工作量(小时),用于任务负载均衡算法 |
| delay_risk_score |
DECIMAL(5,2) |
- |
- |
是 |
延迟风险分数(0-100分,基于剩余时间/工作量计算),用于任务预警算法 |
| execution_count |
INT |
- |
- |
是 |
执行次数(重启/重新分配次数),用于任务难度评估算法 |
| predecessor_task_ids |
VARCHAR |
200 |
- |
否 |
前置任务ID(逗号分隔),用于任务依赖关系算法 |
| task_tags |
VARCHAR |
200 |
- |
否 |
任务标签(如“自动化,接口测试”),用于任务分类算法 |
| completion_score |
DECIMAL(5,2) |
- |
- |
否 |
完成评分(0-10分),用于任务质量评估算法 |
| create_time |
DATETIME |
- |
- |
是 |
创建时间,用于任务生命周期算法 |
| update_time |
DATETIME |
- |
- |
是 |
更新时间,用于任务变更轨迹算法 |
| create_user_id |
BIGINT |
- |
外键 |
是 |
关联sys_user表,用于操作溯源算法 |
| is_delete |
TINYINT |
- |
- |
是 |
软删除标识,算法过滤删除数据 |
2.6 任务状态表(task_status)
| 字段名 |
数据类型 |
长度 |
主键/外键 |
非空 |
备注说明(算法用途) |
| id |
BIGINT |
- |
主键 |
是 |
状态唯一标识,用于状态匹配算法 |
| status_name |
VARCHAR |
50 |
唯一 |
是 |
状态名称,用于状态显示 |
| sort |
INT |
- |
- |
是 |
排序号,用于看板显示顺序算法 |
| is_default |
TINYINT |
- |
- |
是 |
是否默认(0=否,1=是),用于状态初始化算法 |
| task_count |
INT |
- |
- |
是 |
关联任务数,用于状态分布统计算法 |
| avg_residence_time |
INT |
- |
- |
是 |
平均停留时长(小时),用于任务流转效率算法(停留时长=下一状态时间-当前状态时间) |
| create_time |
DATETIME |
- |
- |
是 |
创建时间,用于状态生命周期算法 |
| update_time |
DATETIME |
- |
- |
是 |
更新时间,用于状态变更轨迹算法 |
| is_delete |
TINYINT |
- |
- |
是 |
软删除标识,算法过滤删除数据 |
三、测试计划模块表(支撑测试计划算法)
3.1 测试计划表(test_plan)
| 字段名 |
数据类型 |
长度 |
主键/外键 |
非空 |
备注说明(算法用途) |
| id |
BIGINT |
- |
主键 |
是 |
计划唯一标识,关联计划所有子数据 |
| plan_name |
VARCHAR |
100 |
唯一 |
是 |
计划名称,用于计划显示 |
| project_id |
BIGINT |
- |
外键 |
是 |
关联project表,用于项目-计划匹配算法 |
| plan_type |
TINYINT |
- |
- |
是 |
类型(1=功能,2=接口,3=性能),用于计划分类算法 |
| status |
TINYINT |
- |
- |
是 |
状态(0=待执行,1=执行中,2=已完成,3=已终止),用于计划状态分布算法 |
| start_time |
DATE |
- |
- |
是 |
开始时间,用于计划周期算法 |
| end_time |
DATE |
- |
- |
是 |
预计结束时间,用于计划延迟推算算法 |
| actual_end_time |
DATE |
- |
- |
否 |
实际结束时间,用于计划周期统计(实际时间-开始时间) |
| leader_id |
BIGINT |
- |
外键 |
是 |
关联sys_user表,用于负责人维度算法 |
| plan_desc |
VARCHAR |
500 |
- |
否 |
计划描述,不参与算法计算 |
| planned_case_count |
INT |
- |
- |
是 |
计划用例数,用于用例执行率算法(实际执行数/计划数) |
| actual_case_count |
INT |
- |
- |
是 |
实际执行用例数,同上 |
| pass_rate |
DECIMAL(5,2) |
- |
- |
是 |
用例通过率(%,通过用例数/执行数),用于计划质量算法 |
| block_rate |
DECIMAL(5,2) |
- |
- |
是 |
用例阻塞率(%,阻塞用例数/执行数),用于计划风险算法 |
| bug_count |
INT |
- |
- |
是 |
关联缺陷数,用于计划缺陷密度算法(缺陷数/执行用例数) |
| high_severity_bug_rate |
DECIMAL(5,2) |
- |
- |
是 |
高危缺陷占比(%,高危缺陷数/总缺陷数),用于计划风险评估算法 |
| planned_duration |
INT |
- |
- |
是 |
计划周期(天),用于计划时长预估算法 |
| actual_duration |
INT |
- |
- |
否 |
实际周期(天),用于计划效率算法(实际周期/计划周期) |
| create_time |
DATETIME |
- |
- |
是 |
创建时间,用于计划生命周期算法 |
| update_time |
DATETIME |
- |
- |
是 |
更新时间,用于计划变更轨迹算法 |
| create_user_id |
BIGINT |
- |
外键 |
是 |
关联sys_user表,用于操作溯源算法 |
| is_delete |
TINYINT |
- |
- |
是 |
软删除标识,算法过滤删除数据 |
3.2 需求表(test_requirement)
| 字段名 |
数据类型 |
长度 |
主键/外键 |
非空 |
备注说明(算法用途) |
| id |
BIGINT |
- |
主键 |
是 |
需求唯一标识,关联需求所有数据 |
| requirement_no |
VARCHAR |
50 |
唯一 |
是 |
需求编号,用于需求识别 |
| requirement_name |
VARCHAR |
200 |
- |
是 |
需求名称,用于需求显示 |
| project_id |
BIGINT |
- |
外键 |
是 |
关联project表,用于项目-需求匹配算法 |
| priority |
TINYINT |
- |
- |
是 |
优先级(1=低,2=中,3=高),用于需求排序算法 |
| status |
TINYINT |
- |
- |
是 |
状态(0=待评审,1=已确认,2=已变更,3=已废弃),用于需求状态分布算法 |
| requirement_content |
TEXT |
- |
- |
否 |
需求详情,不参与算法计算 |
| case_count |
INT |
- |
- |
是 |
关联用例数,用于需求覆盖率算法(关联用例数/总用例数) |
| coverage_rate |
DECIMAL(5,2) |
- |
- |
是 |
需求覆盖率(%,已覆盖用例数/关联用例数),用于需求质量算法 |
| change_count |
INT |
- |
- |
是 |
变更次数,用于需求稳定性算法 |
| last_change_time |
DATETIME |
- |
- |
否 |
最后变更时间,用于需求变更轨迹算法 |
| create_time |
DATETIME |
- |
- |
是 |
创建时间,用于需求生命周期算法 |
| update_time |
DATETIME |
- |
- |
是 |
更新时间,用于需求变更轨迹算法 |
| create_user_id |
BIGINT |
- |
外键 |
是 |
关联sys_user表,用于操作溯源算法 |
| is_delete |
TINYINT |
- |
- |
是 |
软删除标识,算法过滤删除数据 |
3.3 测试计划图解表(test_plan_diagram)
| 字段名 |
数据类型 |
长度 |
主键/外键 |
非空 |
备注说明(算法用途) |
| id |
BIGINT |
- |
主键 |
是 |
图解唯一标识,用于图解溯源算法 |
| plan_id |
BIGINT |
- |
外键 |
是 |
关联test_plan表,用于计划-图解匹配算法 |
| diagram_name |
VARCHAR |
100 |
- |
是 |
图解名称,用于图解显示 |
| diagram_data |
TEXT |
- |
- |
是 |
图解JSON数据(组件、连线信息),用于流程图渲染算法 |
| node_count |
INT |
- |
- |
是 |
节点数量,用于图解复杂度算法 |
| line_count |
INT |
- |
- |
是 |
连线数量,同上 |
| version |
INT |
- |
- |
是 |
图解版本号,用于版本管理算法 |
| export_count |
INT |
- |
- |
是 |
导出次数,用于图解热度统计算法 |
| last_export_time |
DATETIME |
- |
- |
否 |
最后导出时间,用于图解活跃性算法 |
| create_time |
DATETIME |
- |
- |
是 |
创建时间,用于图解生命周期算法 |
| update_time |
DATETIME |
- |
- |
是 |
更新时间,用于图解变更轨迹算法 |
| create_user_id |
BIGINT |
- |
外键 |
是 |
关联sys_user表,用于操作溯源算法 |
| is_delete |
TINYINT |
- |
- |
是 |
软删除标识,算法过滤删除数据 |
四、基础测试模块表(支撑手工测试算法)
4.1 测试用例目录表(test_case_dir)
| 字段名 |
数据类型 |
长度 |
主键/外键 |
非空 |
备注说明(算法用途) |
| id |
BIGINT |
- |
主键 |
是 |
目录唯一标识,用于目录匹配算法 |
| dir_name |
VARCHAR |
100 |
- |
是 |
目录名称,用于目录显示 |
| project_id |
BIGINT |
- |
外键 |
是 |
关联project表,用于项目-目录匹配算法 |
| parent_id |
BIGINT |
- |
外键 |
是 |
父目录ID,用于目录树形结构算法 |
| sort |
INT |
- |
- |
是 |
排序号,用于目录显示顺序算法 |
| case_count |
INT |
- |
- |
是 |
关联用例数,用于目录热度统计算法 |
| avg_case_priority |
DECIMAL(3,2) |
- |
- |
是 |
平均用例优先级(1-3分),用于目录重要性算法 |
| create_time |
DATETIME |
- |
- |
是 |
创建时间,用于目录生命周期算法 |
| update_time |
DATETIME |
- |
- |
是 |
更新时间,用于目录变更轨迹算法 |
| create_user_id |
BIGINT |
- |
外键 |
是 |
关联sys_user表,用于操作溯源算法 |
| is_delete |
TINYINT |
- |
- |
是 |
软删除标识,算法过滤删除数据 |
4.2 测试用例表(test_case)
| 字段名 |
数据类型 |
长度 |
主键/外键 |
非空 |
备注说明(算法用途) |
| id |
BIGINT |
- |
主键 |
是 |
用例唯一标识,关联用例所有数据 |
| case_no |
VARCHAR |
50 |
唯一 |
是 |
用例编号,用于用例识别 |
| case_title |
VARCHAR |
200 |
- |
是 |
用例标题,用于用例显示 |
| dir_id |
BIGINT |
- |
外键 |
是 |
关联test_case_dir表,用于目录-用例匹配算法 |
| project_id |
BIGINT |
- |
外键 |
是 |
关联project表,用于项目-用例匹配算法 |
| requirement_id |
BIGINT |
- |
外键 |
否 |
关联test_requirement表,用于需求-用例匹配算法 |
| priority |
TINYINT |
- |
- |
是 |
优先级(1=低,2=中,3=高),用于用例执行排序算法 |
| status |
TINYINT |
- |
- |
是 |
状态(0=待评审,1=已通过,2=已废弃),用于用例状态分布算法 |
| pre_condition |
TEXT |
- |
- |
否 |
前置条件,不参与算法计算 |
| test_steps |
TEXT |
- |
- |
是 |
测试步骤JSON(步骤描述、操作),用于步骤执行算法 |
| expected_result |
TEXT |
- |
- |
是 |
预期结果,用于结果对比算法 |
| step_count |
INT |
- |
- |
是 |
步骤数量,用于用例复杂度算法 |
| execution_count |
INT |
- |
- |
是 |
执行次数,用于用例活跃度算法 |
| pass_count |
INT |
- |
- |
是 |
通过次数,用于用例通过率算法(通过次数/执行次数) |
| fail_count |
INT |
- |
- |
是 |
失败次数,用于用例风险算法(失败次数/执行次数) |
| last_execution_time |
DATETIME |
- |
- |
否 |
最后执行时间,用于用例时效性算法 |
| last_execution_user |
BIGINT |
- |
外键 |
否 |
关联sys_user表,用于最后执行人维度算法 |
| avg_execution_time |
INT |
- |
- |
是 |
平均执行耗时(分钟),用于用例工时预估算法 |
| bug_bind_count |
INT |
- |
- |
是 |
关联缺陷数,用于用例缺陷率算法(缺陷数/执行次数) |
| case_tags |
VARCHAR |
200 |
- |
否 |
用例标签(如“登录,边界值”),用于用例分类算法 |
| review_user_ids |
VARCHAR |
200 |
- |
否 |
评审人ID(逗号分隔),用于评审溯源算法 |
| create_time |
DATETIME |
- |
- |
是 |
创建时间,用于用例生命周期算法 |
| update_time |
DATETIME |
- |
- |
是 |
更新时间,用于用例变更轨迹算法 |
| create_user_id |
BIGINT |
- |
外键 |
是 |
关联sys_user表,用于操作溯源算法 |
| is_delete |
TINYINT |
- |
- |
是 |
软删除标识,算法过滤删除数据 |
4.3 缺陷表(test_bug)
| 字段名 |
数据类型 |
长度 |
主键/外键 |
非空 |
备注说明(算法用途) |
| id |
BIGINT |
- |
主键 |
是 |
缺陷唯一标识,关联缺陷所有数据 |
| bug_no |
VARCHAR |
50 |
唯一 |
是 |
缺陷编号,用于缺陷识别 |
| bug_title |
VARCHAR |
200 |
- |
是 |
缺陷标题,用于缺陷显示 |
| project_id |
BIGINT |
- |
外键 |
是 |
关联project表,用于项目-缺陷匹配算法 |
| case_id |
BIGINT |
- |
外键 |
否 |
关联test_case表,用于用例-缺陷匹配算法 |
| severity |
TINYINT |
- |
- |
是 |
严重级(1=低,2=中,3=高,4=致命),用于缺陷优先级算法 |
| priority |
TINYINT |
- |
- |
是 |
优先级(1=低,2=中,3=高),用于缺陷调度算法 |
| status |
TINYINT |
- |
- |
是 |
状态(0=待提交,1=待处理,2=处理中,3=已修复,4=已关闭,5=已驳回),用于缺陷状态分布算法 |
| bug_module |
VARCHAR |
100 |
- |
否 |
所属模块,用于模块缺陷分布算法 |
| reproduce_steps |
TEXT |
- |
- |
是 |
复现步骤,不参与算法计算 |
| actual_result |
TEXT |
- |
- |
是 |
实际结果,同上 |
| expected_result |
TEXT |
- |
- |
是 |
预期结果,同上 |
| assign_to |
BIGINT |
- |
外键 |
否 |
关联sys_user表,用于负责人维度算法 |
| assign_time |
DATETIME |
- |
- |
否 |
指派时间,用于缺陷响应时长算法(首次处理时间-指派时间) |
| first_process_time |
DATETIME |
- |
- |
否 |
首次处理时间,同上 |
| fix_time |
DATETIME |
- |
- |
否 |
修复时间,用于缺陷修复周期算法(修复时间-创建时间) |
| close_time |
DATETIME |
- |
- |
否 |
关闭时间,用于缺陷生命周期算法(关闭时间-创建时间) |
| reopen_count |
INT |
- |
- |
是 |
重开次数,用于缺陷修复质量算法 |
| verify_count |
INT |
- |
- |
是 |
验证次数,用于缺陷验证算法 |
| verify_result |
TINYINT |
- |
- |
否 |
验证结果(1=通过,2=未通过),用于缺陷验证状态算法 |
| verify_user_id |
BIGINT |
- |
外键 |
否 |
关联sys_user表,用于验证人维度算法 |
| bug_tags |
VARCHAR |
200 |
- |
否 |
缺陷标签(如“兼容性,Crash”),用于缺陷分类算法 |
| related_bug_ids |
VARCHAR |
200 |
- |
否 |
关联缺陷ID(逗号分隔),用于缺陷关联算法 |
| solution |
TEXT |
- |
- |
否 |
解决方案,不参与算法计算 |
| fix_user_id |
BIGINT |
- |
外键 |
否 |
关联sys_user表,用于修复人维度算法 |
| risk_score |
DECIMAL(5,2) |
- |
- |
是 |
风险分数(0-100分,基于严重级、优先级、影响范围计算),用于缺陷风险预警算法 |
| create_time |
DATETIME |
- |
- |
是 |
创建时间,用于缺陷时间序列算法 |
| update_time |
DATETIME |
- |
- |
是 |
更新时间,用于缺陷变更轨迹算法 |
| create_user_id |
BIGINT |
- |
外键 |
是 |
关联sys_user表,用于操作溯源算法 |
| is_delete |
TINYINT |
- |
- |
是 |
软删除标识,算法过滤删除数据 |
五、自动化测试管理模块表(支撑自动化算法)
5.1 功能自动化测试用例表(auto_func_case)
| 字段名 |
数据类型 |
长度 |
主键/外键 |
非空 |
备注说明(算法用途) |
| id |
BIGINT |
- |
主键 |
是 |
用例唯一标识,关联自动化用例数据 |
| case_no |
VARCHAR |
50 |
唯一 |
是 |
用例编号,用于用例识别 |
| case_title |
VARCHAR |
200 |
- |
是 |
用例标题,用于用例显示 |
| project_id |
BIGINT |
- |
外键 |
是 |
关联project表,用于项目-用例匹配算法 |
| dir_id |
BIGINT |
- |
外键 |
是 |
关联auto_func_dir表,用于目录-用例匹配算法 |
| status |
TINYINT |
- |
- |
是 |
状态(0=待配置,1=已就绪,2=已禁用),用于用例执行过滤算法 |
| script_type |
VARCHAR |
50 |
- |
是 |
脚本语言(如“Python”“Java”),用于脚本执行环境匹配算法 |
| script_content |
TEXT |
- |
- |
是 |
脚本内容,用于自动化执行算法 |
| config_params |
TEXT |
- |
- |
否 |
配置参数JSON,用于脚本参数化算法 |
| execution_count |
INT |
- |
- |
是 |
执行次数,用于用例活跃度算法 |
| pass_rate |
DECIMAL(5,2) |
- |
- |
是 |
通过率(%,通过次数/执行次数),用于用例稳定性算法 |
| avg_execution_time |
INT |
- |
- |
是 |
平均执行耗时(秒),用于执行计划预估算法 |
| last_execution_time |
DATETIME |
- |
- |
否 |
最后执行时间,用于用例时效性算法 |
| last_execution_result |
TINYINT |
- |
- |
否 |
最后执行结果(1=通过,2=失败,3=阻塞),用于用例状态算法 |
| fail_reason |
TEXT |
- |
- |
否 |
失败原因,用于失败分析算法 |
| case_set_ids |
VARCHAR |
200 |
- |
否 |
关联用例集ID(逗号分隔),用于用例集匹配算法 |
| create_time |
DATETIME |
- |
- |
是 |
创建时间,用于用例生命周期算法 |
| update_time |
DATETIME |
- |
- |
是 |
更新时间,用于用例变更轨迹算法 |
| create_user_id |
BIGINT |
- |
外键 |
是 |
关联sys_user表,用于操作溯源算法 |
| is_delete |
TINYINT |
- |
- |
是 |
软删除标识,算法过滤删除数据 |
5.2 接口自动化测试用例表(auto_api_case)
| 字段名 |
数据类型 |
长度 |
主键/外键 |
非空 |
备注说明(算法用途) |
| id |
BIGINT |
- |
主键 |
是 |
用例唯一标识,关联接口用例数据 |
| case_no |
VARCHAR |
50 |
唯一 |
是 |
用例编号,用于用例识别 |
| case_title |
VARCHAR |
200 |
- |
是 |
用例标题,用于用例显示 |
| project_id |
BIGINT |
- |
外键 |
是 |
关联project表,用于项目-用例匹配算法 |
| api_id |
BIGINT |
- |
外键 |
是 |
关联api_info表,用于接口-用例匹配算法 |
| method |
VARCHAR |
20 |
- |
是 |
请求方法(GET/POST/PUT/DELETE),用于接口请求算法 |
| request_url |
VARCHAR |
500 |
- |
是 |
请求URL,用于接口请求算法 |
| request_headers |
TEXT |
- |
- |
否 |
请求头JSON,用于接口请求算法 |
| request_params |
TEXT |
- |
- |
否 |
请求参数JSON(query/form/json),用于接口参数化算法 |
| request_body |
TEXT |
- |
- |
否 |
请求体,用于接口请求算法 |
| assert_rules |
TEXT |
- |
- |
是 |
断言规则JSON(响应码、响应体字段匹配),用于接口结果校验算法 |
| status |
TINYINT |
- |
- |
是 |
状态(0=待配置,1=已就绪,2=已禁用),用于用例执行过滤算法 |
| execution_count |
INT |
- |
- |
是 |
执行次数,用于用例活跃度算法 |
| pass_rate |
DECIMAL(5,2) |
- |
- |
是 |
通过率(%,通过次数/执行次数),用于用例稳定性算法 |
| avg_response_time |
INT |
- |
- |
是 |
平均响应时间(毫秒),用于接口性能算法 |
| max_response_time |
INT |
- |
- |
是 |
最大响应时间(毫秒),用于接口性能预警算法 |
| min_response_time |
INT |
- |
- |
是 |
最小响应时间(毫秒),用于接口性能统计 |
| last_execution_time |
DATETIME |
- |
- |
否 |
最后执行时间,用于用例时效性算法 |
| last_execution_result |
TINYINT |
- |
- |
否 |
最后执行结果(1=通过,2=失败,3=阻塞),用于用例状态算法 |
| case_set_ids |
VARCHAR |
200 |
- |
否 |
关联用例集ID(逗号分隔),用于用例集匹配算法 |
| create_time |
DATETIME |
- |
- |
是 |
创建时间,用于用例生命周期算法 |
| update_time |
DATETIME |
- |
- |
是 |
更新时间,用于用例变更轨迹算法 |
| create_user_id |
BIGINT |
- |
外键 |
是 |
关联sys_user表,用于操作溯源算法 |
| is_delete |
TINYINT |
- |
- |
是 |
软删除标识,算法过滤删除数据 |
5.3 自动化测试报告表(auto_test_report)
| 字段名 |
数据类型 |
长度 |
主键/外键 |
非空 |
备注说明(算法用途) |
| id |
BIGINT |
- |
主键 |
是 |
报告唯一标识,关联报告数据 |
| report_no |
VARCHAR |
50 |
唯一 |
是 |
报告编号,用于报告识别 |
| report_name |
VARCHAR |
200 |
- |
是 |
报告名称,用于报告显示 |
| project_id |
BIGINT |
- |
外键 |
是 |
关联project表,用于项目-报告匹配算法 |
| test_type |
TINYINT |
- |
- |
是 |
测试类型(1=功能自动化,2=接口自动化),用于报告分类算法 |
| case_set_id |
BIGINT |
- |
外键 |
是 |
关联auto_case_set表,用于用例集-报告匹配算法 |
| execution_env |
VARCHAR |
100 |
- |
是 |
执行环境(如“测试环境1”“预发环境”),用于环境维度算法 |
| start_time |
DATETIME |
- |
- |
是 |
开始时间,用于报告周期算法 |
| end_time |
DATETIME |
- |
- |
是 |
结束时间,用于报告耗时算法(结束时间-开始时间) |
| total_case_count |
INT |
- |
- |
是 |
总用例数,用于报告统计算法 |
| pass_case_count |
INT |
- |
- |
是 |
通过用例数,用于通过率算法(通过数/总数) |
| fail_case_count |
INT |
- |
- |
是 |
失败用例数,用于失败率算法(失败数/总数) |
| block_case_count |
INT |
- |
- |
是 |
阻塞用例数,用于阻塞率算法(阻塞数/总数) |
| pass_rate |
DECIMAL(5,2) |
- |
- |
是 |
通过率(%),用于报告质量算法 |
| avg_execution_time |
INT |
- |
- |
是 |
平均用例执行耗时(秒),用于执行效率算法 |
| execution_user_id |
BIGINT |
- |
外键 |
是 |
关联sys_user表,用于执行人维度算法 |
| report_data |
TEXT |
- |
- |
是 |
报告详细数据JSON(用例结果、日志、图表),用于报告渲染算法 |
| export_count |
INT |
- |
- |
是 |
导出次数,用于报告热度统计算法 |
| share_count |
INT |
- |
- |
是 |
分享次数,用于报告传播算法 |
| create_time |
DATETIME |
- |
- |
是 |
创建时间,用于报告生命周期算法 |
| update_time |
DATETIME |
- |
- |
是 |
更新时间,用于报告变更轨迹算法 |
| is_delete |
TINYINT |
- |
- |
是 |
软删除标识,算法过滤删除数据 |
六、性能管理模块表(支撑性能测试算法)
6.1 性能配置表(perf_config)
| 字段名 |
数据类型 |
长度 |
主键/外键 |
非空 |
备注说明(算法用途) |
| id |
BIGINT |
- |
主键 |
是 |
配置唯一标识,关联性能配置数据 |
| config_name |
VARCHAR |
100 |
唯一 |
是 |
配置名称,用于配置显示 |
| config_type |
TINYINT |
- |
- |
是 |
配置类型(1=压测参数,2=监控指标,3=环境配置),用于配置分类算法 |
| project_id |
BIGINT |
- |
外键 |
是 |
关联project表,用于项目-配置匹配算法 |
| tool_type |
VARCHAR |
50 |
- |
是 |
压测工具(如“JMeter”“LoadRunner”),用于工具匹配算法 |
| max_concurrent |
INT |
- |
- |
是 |
最大并发数,用于压测强度算法 |
| ramp_up_time |
INT |
- |
- |
是 |
ramp-up时间(秒),用于压测梯度算法 |
| duration |
INT |
- |
- |
是 |
压测时长(秒),用于压测周期算法 |
| loop_count |
INT |
- |
- |
否 |
循环次数,用于压测迭代算法 |
| monitor_metrics |
TEXT |
- |
- |
是 |
监控指标JSON(CPU、内存、响应时间),用于监控算法 |
| threshold_values |
TEXT |
- |
- |
是 |
阈值配置JSON(如“CPU>80%告警”),用于性能预警算法 |
| status |
TINYINT |
- |
- |
是 |
状态(0=待配置,1=已就绪,2=已禁用),用于配置过滤算法 |
| use_count |
INT |
- |
- |
是 |
使用次数,用于配置热度统计算法 |
| last_use_time |
DATETIME |
- |
- |
否 |
最后使用时间,用于配置活跃性算法 |
| create_time |
DATETIME |
- |
- |
是 |
创建时间,用于配置生命周期算法 |
| update_time |
DATETIME |
- |
- |
是 |
更新时间,用于配置变更轨迹算法 |
| create_user_id |
BIGINT |
- |
外键 |
是 |
关联sys_user表,用于操作溯源算法 |
| is_delete |
TINYINT |
- |
- |
是 |
软删除标识,算法过滤删除数据 |
6.2 性能测试用例表(perf_test_case)
| 字段名 |
数据类型 |
长度 |
主键/外键 |
非空 |
备注说明(算法用途) |
| id |
BIGINT |
- |
主键 |
是 |
用例唯一标识,关联性能用例数据 |
| case_no |
VARCHAR |
50 |
唯一 |
是 |
用例编号,用于用例识别 |
| case_title |
VARCHAR |
200 |
- |
是 |
用例标题,用于用例显示 |
| project_id |
BIGINT |
- |
外键 |
是 |
关联project表,用于项目-用例匹配算法 |
| config_id |
BIGINT |
- |
外键 |
是 |
关联perf_config表,用于配置-用例匹配算法 |
| data_source_id |
BIGINT |
- |
外键 |
否 |
关联perf_data_source表,用于数据源-用例匹配算法 |
| test_object |
VARCHAR |
200 |
- |
是 |
测试对象(如“登录接口”“订单查询接口”),用于测试对象算法 |
| target_metrics |
TEXT |
- |
- |
是 |
目标指标JSON(如“响应时间<500ms,吞吐量>100tps”),用于性能达标算法 |
| status |
TINYINT |
- |
- |
是 |
状态(0=待配置,1=已就绪,2=已禁用),用于用例执行过滤算法 |
| execution_count |
INT |
- |
- |
是 |
执行次数,用于用例活跃度算法 |
| pass_count |
INT |
- |
- |
是 |
达标次数,用于用例达标率算法(达标次数/执行次数) |
| avg_tps |
DECIMAL(8,2) |
- |
- |
是 |
平均吞吐量(tps),用于性能统计算法 |
| max_tps |
DECIMAL(8,2) |
- |
- |
是 |
最大吞吐量(tps),用于性能峰值算法 |
| min_tps |
DECIMAL(8,2) |
- |
- |
是 |
最小吞吐量(tps),用于性能谷值算法 |
| avg_response_time |
INT |
- |
- |
是 |
平均响应时间(毫秒),用于性能耗时算法 |
| max_response_time |
INT |
- |
- |
是 |
最大响应时间(毫秒),用于性能预警算法 |
| error_rate |
DECIMAL(5,2) |
- |
- |
是 |
错误率(%,错误请求数/总请求数),用于性能质量算法 |
| last_execution_time |
DATETIME |
- |
- |
否 |
最后执行时间,用于用例时效性算法 |
| last_execution_result |
TINYINT |
- |
- |
否 |
最后执行结果(1=达标,2=不达标,3=失败),用于用例状态算法 |
| create_time |
DATETIME |
- |
- |
是 |
创建时间,用于用例生命周期算法 |
| update_time |
DATETIME |
- |
- |
是 |
更新时间,用于用例变更轨迹算法 |
| create_user_id |
BIGINT |
- |
外键 |
是 |
关联sys_user表,用于操作溯源算法 |
| is_delete |
TINYINT |
- |
- |
是 |
软删除标识,算法过滤删除数据 |
6.3 性能测试报告表(perf_test_report)
| 字段名 |
数据类型 |
长度 |
主键/外键 |
非空 |
备注说明(算法用途) |
| id |
BIGINT |
- |
主键 |
是 |
报告唯一标识,关联性能报告数据 |
| report_no |
VARCHAR |
50 |
唯一 |
是 |
报告编号,用于报告识别 |
| report_name |
VARCHAR |
200 |
- |
是 |
报告名称,用于报告显示 |
| project_id |
BIGINT |
- |
外键 |
是 |
关联project表,用于项目-报告匹配算法 |
| case_id |
BIGINT |
- |
外键 |
是 |
关联perf_test_case表,用于用例-报告匹配算法 |
| execution_env |
VARCHAR |
100 |
- |
是 |
执行环境,用于环境维度算法 |
| start_time |
DATETIME |
- |
- |
是 |
开始时间,用于报告周期算法 |
| end_time |
DATETIME |
- |
- |
是 |
结束时间,用于报告耗时算法(结束时间-开始时间) |
| total_request_count |
BIGINT |
- |
- |
是 |
总请求数,用于性能统计算法 |
| success_request_count |
BIGINT |
- |
- |
是 |
成功请求数,用于成功率算法(成功数/总数) |
| error_request_count |
BIGINT |
- |
- |
是 |
错误请求数,用于错误率算法(错误数/总数) |
| avg_tps |
DECIMAL(8,2) |
- |
- |
是 |
平均吞吐量(tps),用于性能核心算法 |
| max_tps |
DECIMAL(8,2) |
- |
- |
是 |
最大吞吐量(tps),用于性能峰值算法 |
| min_tps |
DECIMAL(8,2) |
- |
- |
是 |
最小吞吐量(tps),用于性能谷值算法 |
| avg_response_time |
INT |
- |
- |
是 |
平均响应时间(毫秒),用于性能耗时算法 |
| p90_response_time |
INT |
- |
- |
是 |
90%响应时间(毫秒),用于性能分位数算法 |
| p95_response_time |
INT |
- |
- |
是 |
95%响应时间(毫秒),同上 |
| p99_response_time |
INT |
- |
- |
是 |
99%响应时间(毫秒),同上 |
| resource_metrics |
TEXT |
- |
- |
是 |
资源指标JSON(CPU、内存、磁盘IO),用于资源占用算法 |
| is_meet_target |
TINYINT |
- |
- |
是 |
是否达标(1=是,2=否),用于性能结果算法 |
| target_miss_reason |
TEXT |
- |
- |
否 |
未达标原因,用于性能分析算法 |
| execution_user_id |
BIGINT |
- |
外键 |
是 |
关联sys_user表,用于执行人维度算法 |
| report_data |
TEXT |
- |
- |
是 |
报告详细数据JSON(图表、日志),用于报告渲染算法 |
| export_count |
INT |
- |
- |
是 |
导出次数,用于报告热度统计算法 |
| create_time |
DATETIME |
- |
- |
是 |
创建时间,用于报告生命周期算法 |
| update_time |
DATETIME |
- |
- |
是 |
更新时间,用于报告变更轨迹算法 |
| is_delete |
TINYINT |
- |
- |
是 |
软删除标识,算法过滤删除数据 |
七、交付物提议
要不要我帮你整理一份数据库表结构说明书+SQL脚本?说明书包含每个表的算法字段说明、表间关联逻辑、典型算法应用场景(如缺陷风险预测、测试覆盖率计算),SQL脚本包含完整建表语句(含索引、外键、字段注释),可直接支撑后续算法开发与数据存储。