docs: 更新测试数据生成器功能设计文档

主要更新:
- 添加字段必填/选填设置和空值率配置
- 移除标签管理系统(20条规则无需标签)
- 添加组合策略保证唯一性生成
- 添加价格生成器(真实分布/心理定价)
- 添加场景化生成器(年龄/数量/评分/折扣/库存)
- 更新所有文档移除emoji,使用纯文字
- 更新类型定义和生成逻辑
This commit is contained in:
雨霖铃
2026-06-05 23:40:36 +08:00
parent f55fd4338d
commit c40b66b703
5 changed files with 1225 additions and 178 deletions
+69 -52
View File
@@ -19,7 +19,7 @@
├─────────────────────────────────────────────────────────────────────┤
│ │
│ ┌─────────────────────────────────────┐ ┌───────────────────────┐ │
│ │ 📋 字段配置 │ │ 📊 数据预览 │ │
│ │ 字段配置 │ │ 数据预览 │ │
│ │ │ │ │ │
│ │ [+ 添加字段] │ │ [实时预览数据] │ │
│ │ │ │ │ │
@@ -28,13 +28,13 @@
│ └─────────────────────────────────────┘ └───────────────────────┘ │
│ │
│ ┌───────────────────────────────────────────────────────────────┐ │
│ │ ⚙️ 生成选项 │ │
│ │ 生成选项 │ │
│ │ 数量、格式、约束... │ │
│ └───────────────────────────────────────────────────────────────┘ │
│ │
│ ┌───────────────────────────────────────────────────────────────┐ │
│ │ 📤 操作栏 │ │
│ │ [🚀 生成] [💾 保存规则] [📚 规则管理] │ │
│ │ 操作栏 │ │
│ │ [生成] [保存规则] [规则管理] │ │
│ └───────────────────────────────────────────────────────────────┘ │
│ │
└─────────────────────────────────────────────────────────────────────┘
@@ -52,16 +52,16 @@
```
┌─────────────────────────────────────────────────────────────────────┐
📋 字段配置 │
│ 字段配置 │
├─────────────────────────────────────────────────────────────────────┤
│ │
│ [+ 添加字段] │
│ │
│ ┌───────────────────────────────────────────────────────────────┐ │
│ │ 1. name [中文姓名 ▼] [⚙️] [] [⬆️][⬇️] │ │
│ │ 2. email [邮箱地址 ▼] [⚙️] [] [⬆️][⬇️] │ │
│ │ 3. phone [手机号 ▼] [⚙️] [] [⬆️][⬇️] │ │
│ │ 4. age [年龄 ▼] [⚙️] [] [⬆️][⬇️] │ │
│ │ 1. name [中文姓名 ▼] [配置] [删除] [上移][下移] │ │
│ │ 2. email [邮箱地址 ▼] [配置] [删除] [上移][下移] │ │
│ │ 3. phone [手机号 ▼] [配置] [删除] [上移][下移] │ │
│ │ 4. age [年龄 ▼] [配置] [删除] [上移][下移] │ │
│ └───────────────────────────────────────────────────────────────┘ │
│ │
│ [+ 添加字段] │
@@ -73,9 +73,9 @@
- 点击字段名可编辑
- 点击生成器下拉框可切换生成器
- 点击 ⚙️ 展开参数配置
- 点击 删除字段
- 点击 ⬆️⬇️ 调整顺序
- 点击 配置 展开参数配置
- 点击 删除 删除字段
- 点击 上移下移 调整顺序
---
@@ -90,36 +90,50 @@
│ 字段配置 │
├─────────────────────────────────────────────────────────────────────┤
│ │
📝 基础配置 │
│ 基础配置 │
│ ┌───────────────────────────────────────────────────────────────┐ │
│ │ 字段名称: [name ] │ │
│ │ 字段描述: [用户姓名 ] │ │
│ └───────────────────────────────────────────────────────────────┘ │
│ │
🔧 生成器选择 │
│ 生成器选择 │
│ ┌───────────────────────────────────────────────────────────────┐ │
│ │ 分类: [👤 个人信息 ▼] │ │
│ │ 分类: [个人信息 ▼] │ │
│ │ 生成器: [中文姓名 ▼] │ │
│ │ 📖 说明: 生成中文姓名,如张三、李四 │ │
│ │ 说明: 生成中文姓名,如张三、李四 │ │
│ └───────────────────────────────────────────────────────────────┘ │
│ │
⚙️ 参数配置 │
│ 参数配置 │
│ ┌───────────────────────────────────────────────────────────────┐ │
│ │ 姓氏池: [百家姓前100 ▼] │ │
│ │ 名字长度: [1] ~ [2] │ │
│ │ ☑ 唯一性约束 │ │
│ │ ☑ 必填 │ │
│ └───────────────────────────────────────────────────────────────┘ │
│ │
🎲 预览示例
空值率设置 (仅选填字段显示)
│ ┌───────────────────────────────────────────────────────────────┐ │
│ │ 空值概率: [====|----] 50% │ │
│ │ 预设: [低 20%] [中 50%] [高 80%] │ │
│ └───────────────────────────────────────────────────────────────┘ │
│ │
│ 预览示例 │
│ ┌───────────────────────────────────────────────────────────────┐ │
│ │ 张伟, 李娜, 王强, 赵敏, 刘洋 │ │
│ └───────────────────────────────────────────────────────────────┘ │
│ │
│ [保存] [取消] │
│ [保存] [取消] │
│ │
└─────────────────────────────────────────────────────────────────────┘
```
**交互说明**:
- **必填复选框**: 勾选后该字段必填,100% 生成数据
- **空值率设置**: 仅当选填时显示,控制该字段生成空值的概率
- **预设按钮**: 快速设置常用空值率(低/中/高)
- **空值率滑块**: 精细调节空值概率(0-100%)
---
### 3. 数据预览组件
@@ -130,10 +144,10 @@
```
┌─────────────────────────────────────────────────────────────────────┐
📊 数据预览 │
│ 数据预览 │
├─────────────────────────────────────────────────────────────────────┤
│ │
📋 预览: 前 10 条 │
│ 预览: 前 10 条 │
│ │
│ ┌───────────────────────────────────────────────────────────────┐ │
│ │ { │ │
@@ -151,7 +165,7 @@
│ │ ... │ │
│ └───────────────────────────────────────────────────────────────┘ │
│ │
📊 格式切换: │
│ 格式切换: │
│ [JSON] [CSV] [SQL] [TypeScript] │
│ │
└─────────────────────────────────────────────────────────────────────┘
@@ -174,11 +188,11 @@
```
┌─────────────────────────────────────────────────────────────────────┐
⚙️ 生成选项 │
│ 生成选项 │
├─────────────────────────────────────────────────────────────────────┤
│ │
│ ┌─────────────────┐ ┌─────────────────┐ ┌───────────────────────┐ │
│ │ 📊 生成数量 │ │ 📄 数据格式 │ │ 🔒 约束条件 │ │
│ │ 生成数量 │ │ 数据格式 │ │ 约束条件 │ │
│ │ │ │ │ │ │ │
│ │ [100 ] │ │ ○ JSON │ │ ☑ name 唯一 │ │
│ │ [10 ▼] │ │ ○ CSV │ │ ☑ email 唯一 │ │
@@ -187,6 +201,13 @@
│ │ │ │ │ │ │ │
│ └─────────────────┘ └─────────────────┘ └───────────────────────┘ │
│ │
│ 默认空值率 (选填字段) │
│ ┌───────────────────────────────────────────────────────────────┐ │
│ │ 空值概率: [====|----] 50% │ │
│ │ 预设: [低 20%] [中 50%] [高 80%] │ │
│ │ 说明: 未单独设置空值率的选填字段将使用此默认值 │ │
│ └───────────────────────────────────────────────────────────────┘ │
│ │
└─────────────────────────────────────────────────────────────────────┘
```
@@ -200,10 +221,10 @@
```
┌─────────────────────────────────────────────────────────────────────┐
📤 操作栏 │
│ 操作栏 │
├─────────────────────────────────────────────────────────────────────┤
│ │
│ [🚀 生成数据] [💾 保存规则] [📚 规则管理] [📥 导入规则] [📤 导出]│
│ [生成数据] [保存规则] [规则管理] [导入规则] [导出]│
│ │
└─────────────────────────────────────────────────────────────────────┘
```
@@ -218,29 +239,29 @@
```
┌─────────────────────────────────────────────────────────────────────┐
📊 生成结果 │
│ 生成结果 │
├─────────────────────────────────────────────────────────────────────┤
│ │
成功生成 100 条数据 │
│ 成功生成 100 条数据 │
│ │
📊 数据统计: │
│ 数据统计: │
│ ┌───────────────────────────────────────────────────────────────┐ │
│ │ • 总条数: 100 │ │
│ │ • 文件大小: 12.5 KB │ │
│ │ • 唯一性检查: 全部通过 │ │
│ │ • 唯一性检查: 全部通过 │ │
│ └───────────────────────────────────────────────────────────────┘ │
│ │
📋 数据预览: │
│ 数据预览: │
│ ┌───────────────────────────────────────────────────────────────┐ │
│ │ [JSON 格式预览...] │ │
│ └───────────────────────────────────────────────────────────────┘ │
│ │
📤 导出选项: │
│ 导出选项: │
│ ┌───────────────────────────────────────────────────────────────┐ │
│ │ [📋 复制全部] [📥 下载 JSON] [📥 下载 CSV] [📥 下载 SQL] │ │
│ │ [复制全部] [下载 JSON] [下载 CSV] [下载 SQL] │ │
│ └───────────────────────────────────────────────────────────────┘ │
│ │
│ [关闭] │
│ [关闭] │
│ │
└─────────────────────────────────────────────────────────────────────┘
```
@@ -255,31 +276,27 @@
```
┌─────────────────────────────────────────────────────────────────────┐
📚 规则管理 │
│ 规则管理 │
├─────────────────────────────────────────────────────────────────────┤
│ │
🔍 搜索: [搜索规则名称或标签... ] │
│ 搜索: [搜索规则名称... ] │
│ │
📁 标签筛选: [全部] [电商] [用户] [测试数据] [最近使用]
│ │
│ 📋 规则列表: │
规则列表:
│ ┌───────────────────────────────────────────────────────────────┐ │
│ │ 📦 电商用户数据 - 测试用 │ │
│ │ 📝 用于测试用户注册功能 │ │
│ │ 🏷️ 电商 用户 测试数据 │ │
│ │ 📊 4 个字段 | 100 条 | JSON │ │
│ │ 📅 2024-01-15 创建 | 使用 12 次 │ │
│ │ [📥 加载] [✏️ 编辑] [📤 导出] [🗑️ 删除] │ │
│ │ 电商用户数据 - 测试用 │ │
│ │ 用于测试用户注册功能 │ │
│ │ 4 个字段 | 100 条 | JSON │ │
│ │ 2024-01-15 创建 | 使用 12 次 │ │
│ │ [加载] [编辑] [导出] [删除] │ │
│ │ │ │
│ │ 📦 电商订单数据 - 测试用 │ │
│ │ 📝 用于测试订单功能 │ │
│ │ 🏷️ 电商 订单 测试数据 │ │
│ │ 📊 6 个字段 | 500 条 | JSON │ │
│ │ 📅 2024-01-16 创建 | 使用 8 次 │ │
│ │ [📥 加载] [✏️ 编辑] [📤 导出] [🗑️ 删除] │ │
│ │ 电商订单数据 - 测试用 │ │
│ │ 用于测试订单功能 │ │
│ │ 6 个字段 | 500 条 | JSON │ │
│ │ 2024-01-16 创建 | 使用 8 次 │ │
│ │ [加载] [编辑] [导出] [删除] │ │
│ └───────────────────────────────────────────────────────────────┘ │
│ │
│ [📥 导入规则] [📤 导出全部] │
│ [导入规则] [导出全部] │
│ │
└─────────────────────────────────────────────────────────────────────┘
```