---
name: prj-agent-platform-e2e-test
description: 使用 agent-browser 对 Agent 平台核心功能进行端到端验证。当用户说「跑一遍 Agent 平台的端到端测试」「验证一下 Agent 平台的核心功能」时使用。
metadata:
  category: 项目专用
  tagline: "用 agent-browser 对 Agent 平台核心功能做端到端验证"
  example: "跑一遍 Agent 平台的端到端测试"
---

# 端到端功能验证

使用 agent-browser 对平台核心功能进行端到端验证，确保新功能可用且老功能未被破坏。

## 步骤

### 第一步：启动服务

除非用户传入 `--skip-start`，否则执行以下命令启动所有服务：

```bash
./scripts/start-services.sh --langfuse
```

等待服务就绪，确认以下端口可访问：

- api-server :3000
- web-frontend :5173
- aieda-ui :5174

如果用户传入了 `--skip-start`，跳过此步，直接进入测试。

### 第二步：使用 agent-browser 执行端到端测试

使用 `/agent-browser` 技能打开浏览器并逐步执行以下测试场景。**每个场景结束后截图留证**，如果某个场景失败，记录失败原因并继续执行下一个场景。

#### 场景 1：登录验证

1. 打开 `http://localhost:5173/login`
2. 在邮箱输入框填入 `test@test.com`
3. 在密码输入框填入 `12345678`
4. 点击"登录"按钮
5. 验证跳转到 `/chat` 页面
6. 截图保存

#### 场景 2：新建会话

1. 在 `/chat` 页面，找到侧边栏的"新建对话"按钮（Plus 图标）
2. 点击"新建对话"
3. 验证聊天区域出现新的空对话
4. 截图保存

#### 场景 3：发送消息与聊天

1. 在聊天输入框（textarea）中输入 `你好，请介绍一下你自己`
2. 点击发送按钮或按 Enter 键发送
3. 等待 AI 回复（最多等待 30 秒）
4. 验证消息列表中出现了用户发送的消息和 AI 的回复
5. 截图保存

#### 场景 4：多轮对话

1. 在同一对话中继续输入 `你能做什么？`
2. 发送消息
3. 等待 AI 回复（最多等待 30 秒）
4. 验证消息列表中有两条用户消息和两条 AI 回复
5. 截图保存

#### 场景 5：验证新功能

1. 检查最近 git 提交记录（`git log --oneline -10`），识别最近新增的功能
2. 根据新增功能，设计对应的测试操作
3. 执行测试操作并验证功能可用
4. 截图保存

### 第三步：汇总测试结果

所有场景执行完毕后，输出测试报告：

```markdown
## 端到端功能验证报告

| 场景 | 状态 | 备注 |
|------|------|------|
| 登录验证 | PASS/FAIL | ... |
| 新建会话 | PASS/FAIL | ... |
| 发送消息与聊天 | PASS/FAIL | ... |
| 多轮对话 | PASS/FAIL | ... |
| 新功能验证 | PASS/FAIL | ... |
```

如果存在 FAIL 项，列出具体的失败原因和可能的修复方向。

## 注意事项

- 服务启动需要时间，等待健康检查通过后再开始测试
- agent-browser 操作之间需要适当等待页面加载，避免元素未渲染完成就操作
- 聊天消息发送后 AI 回复可能需要较长时间，设置合理的等待超时
- 如果登录失败，不要继续后续场景，直接报告登录问题
- 截图用于留证，帮助定位问题
