# 系统设置功能测试指南

## 📋 前置条件

### 1. 启动后端服务

```bash
# 方式1：使用 Docker
docker-compose up -d backend

# 方式2：本地运行
cd backend
python main.py
```

后端应该运行在 `http://localhost:23337`（或你配置的端口）

### 2. 启动前端服务

```bash
cd frontend
npm run dev
```

前端应该运行在 `http://localhost:5173`（Vite 默认端口）

---

## 🧪 测试步骤

### 测试 1：访问设置页面

1. 打开浏览器访问前端地址
2. 点击左侧边栏的 **"设置"** 标签
3. 应该看到三个分页：**正则规则**、**思考标签**、**通用设置**

### 测试 2：加载系统设置

打开浏览器控制台（F12），应该看到：
- ✅ 无错误信息
- ✅ Network 面板中有 `/api/regex/settings` 请求
- ✅ 响应数据包含 `thinkingTagPrefix` 和 `thinkingTagSuffix`

### 测试 3：修改思考标签

1. 切换到 **"思考标签"** 分页
2. 修改前缀为：`<think>`
3. 修改后缀为：`</think>`
4. 点击 **"保存设置"**
5. 应该看到成功提示："设置已保存"

### 测试 4：验证持久化

1. 刷新页面
2. 再次进入设置页面
3. 思考标签应该保持刚才修改的值

### 测试 5：导入规则文件

1. 切换到 **"正则规则"** 分页
2. 点击 **"选择文件"**
3. 选择一个 SillyTavern 格式的 JSON 文件
4. 应该看到成功提示

**示例规则文件**（可以复制保存为 `test_rules.json`）：

```json
[
  {
    "scriptName": "测试规则",
    "findRegex": "/test/gi",
    "replaceString": "replaced",
    "trimStrings": [],
    "placement": [2],
    "substituteRegex": 0,
    "markdownOnly": false,
    "promptOnly": false,
    "runOnEdit": true,
    "minDepth": 0,
    "maxDepth": null,
    "disabled": false
  }
]
```

### 测试 6：导出规则

1. 点击 **"导出全局规则"** 按钮
2. 应该在新窗口打开并显示 JSON 数据

---

## 🐛 常见问题

### 问题 1：页面空白或报错

**可能原因**：
- 后端服务未启动
- API 端口配置错误

**解决方法**：
```bash
# 检查后端是否运行
curl http://localhost:23337/api/regex/settings

# 检查前端代理配置
cat frontend/vite.config.js
```

### 问题 2：保存设置失败

**可能原因**：
- 后端权限问题
- data 目录不存在

**解决方法**：
```bash
# 检查 data 目录是否存在
ls -la data/

# 检查文件权限
chmod -R 755 data/
```

### 问题 3：导入规则失败

**可能原因**：
- JSON 格式错误
- 文件大小超限

**解决方法**：
- 使用 JSON 验证工具检查文件格式
- 确保文件编码为 UTF-8

---

## 📊 预期效果

### 正则规则分页
- ✅ 显示文件结构说明
- ✅ 可以上传 JSON 文件
- ✅ 可以导出规则

### 思考标签分页
- ✅ 显示前后缀输入框
- ✅ 实时预览效果
- ✅ 保存后持久化

### 通用设置分页
- ✅ 显示当前预设输入框
- ✅ 可以修改并保存

---

## 🔍 调试技巧

### 查看后端日志

```bash
# Docker 环境
docker-compose logs -f backend

# 本地环境
# 直接查看终端输出
```

### 查看前端网络请求

1. 打开浏览器开发者工具（F12）
2. 切换到 **Network** 标签
3. 筛选 `regex` 相关请求
4. 检查请求和响应的详细内容

### 检查数据存储

```bash
# 查看系统设置文件
cat data/system_settings.json

# 查看正则规则文件
ls -la data/regex/global/
cat data/regex/global/default.json
```

---

## ✅ 完成标志

当你能成功完成以下操作时，说明功能已正常工作：

- [ ] 访问设置页面
- [ ] 修改思考标签并保存
- [ ] 刷新页面后设置仍然有效
- [ ] 导入一个规则文件
- [ ] 导出全局规则

---

## 📝 下一步开发

1. **规则管理界面** - 添加规则的增删改查功能
2. **规则测试工具** - 实时预览正则效果
3. **批量操作** - 支持批量启用/禁用规则
4. **规则模板** - 提供常用规则模板
