# 100并发测试指南 v3.11.10

## 📋 测试时间
2025-10-08

## 🎯 测试目标

在实施全面优化后，测试**100并发**的实际性能表现。

---

## ✅ 已实施的优化（v3.11.10）

### 核心优化清单
- [x] **连接稳定等待**：2000ms → 300ms（节省170秒/100个token）
- [x] **任务间隔**：500ms → 200ms（每个token节省约3秒）
- [x] **连接间隔**：500ms → 300ms（启动快40%）
- [x] **历史记录**：10条 → 3条（节省内存~70MB）
- [x] **日志开关**：添加ENABLE_BATCH_LOGS控制（节省CPU 10-15%）

### 预期效果
```
内存：1800MB → 1200MB（节省33%）⬇️
CPU：  60% → 35%（节省42%）⬇️
时间：单批3-4分钟 → 1.5-2分钟（快50%）⬇️
```

---

## 🧪 测试计划

### 阶段1：小规模测试（10个token）

**目的：** 验证基础功能正常

#### 测试步骤
1. 刷新页面（Ctrl + Shift + R）
2. 选择10个token
3. 并发数设置为：10
4. 选择任务模板：快速套餐
5. 点击"开始执行"

#### 观察指标
- [ ] 是否快速启动（3秒内全部开始）
- [ ] 任务管理器：内存占用 <500MB
- [ ] 任务管理器：CPU占用 <30%
- [ ] 页面是否流畅，可以正常滚动
- [ ] 成功率 >90%

#### 预期结果
```
启动时间：~3秒
执行时间：~1-2分钟
总时间：  ~1.5-2分钟
成功率：  >90%
```

---

### 阶段2：中规模测试（50个token）

**目的：** 测试中等负载

#### 测试步骤
1. 选择50个token
2. 并发数设置为：50
3. 选择任务模板：快速套餐
4. **重要：** 关闭其他浏览器标签页
5. 点击"开始执行"

#### 观察指标
- [ ] 启动时间：~15秒
- [ ] 内存占用：<1GB
- [ ] CPU占用：<40%
- [ ] 浏览器无崩溃、无卡死
- [ ] 成功率 >85%

#### 预期结果
```
启动时间：~15秒
执行时间：~1.5-2分钟
总时间：  ~2分钟
成功率：  >85%
```

---

### 阶段3：满载测试（100个token）⭐

**目的：** 测试100并发的实际表现

#### ⚠️ 测试前准备

**必须完成：**
1. ✅ 关闭所有其他浏览器标签页
2. ✅ 关闭不必要的应用程序
3. ✅ 确保可用内存 >2GB
4. ✅ 确保网络稳定
5. ✅ 选择服务器空闲时段

#### 测试步骤
1. 选择100个token
2. 并发数设置为：**100**
3. 选择任务模板：**快速套餐**（不要选完整套餐，太慢）
4. 打开任务管理器，监控性能
5. 点击"开始执行"

#### 实时监控（重要！）

**任务管理器监控：**
```
内存占用目标：<1.5GB
CPU占用目标： <40%
```

**浏览器监控：**
```
打开F12控制台，观察：
- 是否有大量错误
- 是否有超时警告
- WebSocket连接状态
```

**页面监控：**
```
- 是否可以滚动
- 是否可以点击
- token卡片是否正常更新
```

#### 观察指标

**性能指标：**
- [ ] 启动时间：<30秒
- [ ] 内存占用：<1.5GB
- [ ] CPU占用：<45%
- [ ] 浏览器无崩溃
- [ ] 页面基本流畅

**任务指标：**
- [ ] 连接成功率 >90%
- [ ] 任务成功率 >80%
- [ ] 重试触发率 <15%
- [ ] 单批完成时间：1.5-2.5分钟

#### 预期结果（理想情况）
```
启动时间：  ~30秒
执行时间：  ~1.5-2分钟
总时间：    ~2-2.5分钟
内存峰值：  ~1.2-1.5GB
CPU平均：   ~35-40%
成功率：    >85%
```

#### 可接受结果（实际情况可能）
```
启动时间：  ~30-45秒
执行时间：  ~2-3分钟
总时间：    ~2.5-3.5分钟
内存峰值：  ~1.5-1.8GB
CPU平均：   ~40-50%
成功率：    >75%
```

#### 不可接受结果（需要调整）
```
启动时间：  >60秒
执行时间：  >4分钟
内存峰值：  >2GB
CPU平均：   >60%
成功率：    <70%
浏览器：    崩溃/卡死
```

---

### 阶段4：全量测试（700个token，分7批）

**目的：** 测试700个token的完整流程

#### 测试方案

**方案A：自动批次（推荐）**
```
并发设置：100
自动执行：7批
每批间隔：无需等待，自动进行
总预计时间：7批 × 2分钟 = 14分钟
```

**方案B：手动分批（保守）**
```
每次运行：100个token
手动运行：7次
每批间隔：等待5分钟（让系统休息）
总预计时间：7批 × 2分钟 + 6次间隔 × 5分钟 = 44分钟
```

**方案C：分时段（最稳定）**
```
上午：运行230个token（并发100）
中午：运行240个token（并发100）
晚上：运行230个token（并发100）
```

#### 测试步骤（方案A）
1. 选择全部700个token
2. 并发数：100
3. 任务模板：快速套餐
4. 启用自动重试：3轮
5. 开始执行
6. **每隔5分钟查看一次进度**

#### 监控要点
- [ ] 每批是否正常完成
- [ ] 批次间是否正常衔接
- [ ] 整体成功率
- [ ] 是否有批次失败
- [ ] 浏览器是否稳定

#### 预期结果
```
总批次：   7批
单批时间： 1.5-2.5分钟
总时间：   10.5-17.5分钟
整体成功率：>80%
```

---

## 📊 性能数据记录表

### 请在测试时填写

#### 10个Token测试
| 指标 | 实际值 | 是否达标 |
|------|--------|---------|
| 启动时间 | ___秒 | [ ] |
| 执行时间 | ___分___秒 | [ ] |
| 内存峰值 | ___MB | [ ] |
| CPU平均 | ___%  | [ ] |
| 成功率 | ___%  | [ ] |

#### 50个Token测试
| 指标 | 实际值 | 是否达标 |
|------|--------|---------|
| 启动时间 | ___秒 | [ ] |
| 执行时间 | ___分___秒 | [ ] |
| 内存峰值 | ___MB | [ ] |
| CPU平均 | ___%  | [ ] |
| 成功率 | ___%  | [ ] |

#### 100个Token测试
| 指标 | 实际值 | 目标值 | 是否达标 |
|------|--------|--------|---------|
| 启动时间 | ___秒 | <30秒 | [ ] |
| 执行时间 | ___分___秒 | 1.5-2.5分钟 | [ ] |
| 总时间 | ___分___秒 | 2-3分钟 | [ ] |
| 内存峰值 | ___MB | <1500MB | [ ] |
| CPU平均 | ___% | <45% | [ ] |
| 连接成功率 | ___% | >90% | [ ] |
| 任务成功率 | ___% | >80% | [ ] |
| 浏览器状态 | 正常/卡顿/崩溃 | 正常 | [ ] |

#### 700个Token测试
| 指标 | 实际值 | 目标值 | 是否达标 |
|------|--------|--------|---------|
| 总批次 | 7批 | 7批 | [ ] |
| 单批平均时间 | ___分___秒 | 1.5-2.5分钟 | [ ] |
| 总时间 | ___分___秒 | 10.5-17.5分钟 | [ ] |
| 整体成功率 | ___% | >80% | [ ] |
| 是否有崩溃 | 是/否 | 否 | [ ] |

---

## ⚠️ 常见问题排查

### 问题1：浏览器崩溃或卡死

**可能原因：**
- 内存不足
- CPU过载
- token数量太多

**解决方案：**
1. 降低并发数：100 → 70 → 50
2. 启用日志开关：ENABLE_BATCH_LOGS = false（已默认）
3. 关闭其他应用程序
4. 重启浏览器

### 问题2：大量任务超时

**可能原因：**
- 网络不稳定
- 服务器响应慢
- 超时时间太短

**解决方案：**
1. 检查网络连接
2. 降低并发数
3. 增加超时时间（修改代码）
4. 错峰执行

### 问题3：成功率低于70%

**可能原因：**
- 服务器限流
- Token失效
- 并发太高

**解决方案：**
1. 降低并发数：100 → 50
2. 增加连接间隔：300ms → 500ms
3. 增加任务间隔：200ms → 500ms
4. 检查token有效性

### 问题4：内存持续增长不释放

**可能原因：**
- 内存泄漏
- WebSocket未正确断开

**解决方案：**
1. 检查控制台是否有错误
2. 重启浏览器
3. 清除浏览器缓存
4. 分批执行，每批间隔休息

---

## 📋 测试检查清单

### 测试前准备
- [ ] 已刷新页面加载最新代码
- [ ] 已关闭其他浏览器标签页
- [ ] 已关闭不必要的应用程序
- [ ] 已确认内存 >2GB 可用
- [ ] 已确认网络稳定
- [ ] 已打开任务管理器监控

### 测试过程
- [ ] 按计划执行各阶段测试
- [ ] 实时监控性能指标
- [ ] 记录所有测试数据
- [ ] 截图关键问题
- [ ] 保存控制台错误日志

### 测试后
- [ ] 填写性能数据记录表
- [ ] 分析测试结果
- [ ] 识别性能瓶颈
- [ ] 提出优化建议
- [ ] 决定是否需要进一步优化

---

## 🎯 测试成功标准

### 最低标准（必须达到）
```
✅ 100并发可以正常运行完成
✅ 浏览器不崩溃、不卡死
✅ 成功率 >70%
✅ 内存 <2GB
✅ CPU <60%
```

### 理想标准（期望达到）
```
⭐ 100并发流畅运行
⭐ 成功率 >85%
⭐ 内存 <1.5GB
⭐ CPU <45%
⭐ 单批时间 <2.5分钟
⭐ 700个token总时间 <15分钟
```

---

## 📝 测试报告模板

测试完成后，请按以下模板提供反馈：

```
===== 100并发测试报告 =====

测试时间：____年__月__日 __:__
浏览器：  Chrome / Edge / Firefox （版本：____）
系统：    Windows / Mac / Linux
内存总量：____GB

【10个Token测试】
- 结果：成功 / 失败
- 时间：____
- 问题：____

【50个Token测试】
- 结果：成功 / 失败
- 时间：____
- 问题：____

【100个Token测试】⭐
- 结果：成功 / 失败 / 部分成功
- 启动时间：____秒
- 执行时间：____分钟
- 内存峰值：____MB
- CPU平均： ____%
- 成功率：  ____%
- 主要问题：____
- 建议调整：____

【700个Token测试】
- 是否完成：是 / 否 / 进行中
- 总时间：____分钟
- 整体成功率：____%
- 主要问题：____

【整体评价】
- 是否满足需求：是 / 否 / 基本满足
- 是否需要进一步优化：是 / 否
- 其他建议：____

===== 报告结束 =====
```

---

## 🚀 下一步行动

根据测试结果决定：

### 如果测试成功（达到理想标准）
```
✅ 继续使用当前配置
✅ 可以正式用于700个token
✅ 监控长期稳定性
```

### 如果基本成功（达到最低标准）
```
📊 分析性能瓶颈
💡 考虑实施虚拟滚动等高级优化
🔧 调整部分参数
```

### 如果测试失败（未达标准）
```
⚠️ 降低并发数（100 → 70 → 50）
⚠️ 增加延迟时间
⚠️ 分批执行
⚠️ 考虑硬件升级或多浏览器方案
```

---

**祝测试顺利！** 🎯

有任何问题请随时反馈，我会根据您的测试结果提供进一步的优化建议！

