Files
AIEC-new/AIEC-server/docs/API接口测试文档.md
2025-10-17 09:31:28 +08:00

274 lines
5.1 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 云大阁聊天系统 - API接口测试文档
## 文档信息
- 版本1.0.0
- 日期2025-07-20
- 测试环境:
- 前端http://localhost:3000
- 后端http://localhost:8080
## 测试账号
- 测试手机号18362903328或您的手机号
- 开发模式验证码123456
---
## 一、认证模块测试
### 1.1 发送验证码
**接口地址**: `POST /api/auth/send-code`
**测试步骤**:
- [ ] 访问注册/登录页面
- [ ] 输入手机号/邮箱
- [ ] 点击"发送验证码"按钮
**预期结果**:
- [ ] 按钮显示倒计时60秒
- [ ] 控制台显示验证码(开发模式)
- [ ] 响应状态码200
**测试数据**:
```json
请求:
{
"contact": "18362903328"
}
响应:
{
"code": 200,
"message": "验证码已发送",
"data": {
"code": "123456" // 开发模式返回
}
}
```
### 1.2 用户注册
**接口地址**: `POST /api/auth/register`
**测试步骤**:
- [ ] 访问注册页面
- [ ] 输入用户名、手机号/邮箱
- [ ] 输入验证码123456
- [ ] 点击"注册"按钮
**预期结果**:
- [ ] 注册成功,自动跳转到首页
- [ ] 本地存储token
- [ ] 响应状态码200
**测试数据**:
```json
请求:
{
"username": "testuser",
"phone": "18362903328",
"code": "123456"
}
响应:
{
"code": 200,
"data": {
"token": "eyJhbGciOiJIUzI1NiJ9...",
"type": "Bearer",
"id": 2,
"username": "testuser",
"phone": "18362903328",
"email": null
}
}
```
### 1.3 用户登录
**接口地址**: `POST /api/auth/login`
**测试步骤**:
- [ ] 访问登录页面
- [ ] 输入手机号/邮箱
- [ ] 输入验证码123456
- [ ] 点击"登录"按钮
**预期结果**:
- [ ] 登录成功,跳转到首页
- [ ] 显示用户信息
- [ ] 本地存储token
**测试数据**:
```json
请求:
{
"contact": "18362903328",
"code": "123456"
}
响应:同注册响应
```
---
## 二、聊天模块测试
### 2.1 发送消息(同步模式)
**接口地址**: `POST /qa/ask`
**测试步骤**:
- [ ] 登录后在首页输入消息
- [ ] 点击发送按钮
- [ ] 等待AI回复
**预期结果**:
- [ ] 用户消息立即显示
- [ ] AI回复完整显示
- [ ] 新会话添加到侧边栏
**测试数据**:
```json
请求:
{
"mode": "chat",
"conversationId": null, // 新会话
"message": "你好"
}
响应:
{
"success": true,
"conversationId": "37",
"messageId": "75",
"answer": "你好!很高兴见到你...",
"tokensUsed": 100,
"timeMs": 2000
}
```
### 2.2 发送消息(流式模式)
**接口地址**: `POST /qa/ask/stream`
**测试步骤**:
- [ ] 发送较长的问题
- [ ] 观察AI回复是否逐字显示
**预期结果**:
- [ ] AI回复实时流式显示
- [ ] 显示打字效果
- [ ] 完成后保存完整消息
**SSE事件流**:
```
event: message
data: {"type":"content","content":"你好","finished":false}
event: message
data: {"type":"content","content":"","finished":false}
event: finished
data: {"type":"finished","conversationId":"37","messageId":"76","tokensUsed":150,"timeMs":3000,"finished":true}
```
### 2.3 深度检索模式
**测试步骤**:
- [ ] 点击"深度检索"按钮激活
- [ ] 发送需要详细分析的问题
- [ ] 检查是否返回引用资料
**预期结果**:
- [ ] 按钮高亮显示
- [ ] 回复包含引用资料research模式
---
## 三、会话管理测试
### 3.1 获取会话列表
**接口地址**: `GET /qa/conversations`
**测试步骤**:
- [ ] 刷新页面
- [ ] 检查侧边栏会话列表
**预期结果**:
- [ ] 显示所有历史会话
- [ ] 按时间倒序排列
**响应示例**:
```json
{
"code": 200,
"data": [
{
"id": 37,
"userId": 2,
"title": "你好",
"mode": "chat",
"createdAt": "2025-07-20T18:33:38",
"updatedAt": "2025-07-20T18:33:39"
}
]
}
```
### 3.2 获取会话消息
**接口地址**: `GET /qa/conversations/{id}/messages`
**测试步骤**:
- [ ] 点击侧边栏的历史会话
- [ ] 观察聊天窗口内容
**预期结果**:
- [ ] 正确加载历史消息
- [ ] 保持消息顺序
- [ ] 滚动到最新消息
**响应示例**:
```json
{
"code": 200,
"data": [
{
"id": 74,
"conversationId": 37,
"sequence": 1,
"role": "user",
"content": "你好",
"createdAt": "2025-07-20T18:33:38"
},
{
"id": 75,
"conversationId": 37,
"sequence": 2,
"role": "assistant",
"content": "你好!很高兴见到你...",
"createdAt": "2025-07-20T18:33:39"
}
]
}
```
### 3.3 新建会话
**测试步骤**:
- [ ] 点击"新建对话"按钮
- [ ] 发送第一条消息
- [ ] 检查会话创建
**预期结果**:
- [ ] 清空当前聊天窗口
- [ ] 发送消息后创建新会话
- [ ] 新会话出现在侧边栏顶部
---
## 测试总结
### 通过的测试项
- [ ] 认证模块 (3/4)
- [ ] 聊天模块 (3/3)
- [ ] 会话管理 (3/3)
**测试人员**:江争达
**测试日期**2025-07-20
**签名**_______________