Files
ai_wht_B/测试整体后端接口性能_说明.md
“shengyudong” 5a384b694e 2026-1-6
2026-01-06 14:18:39 +08:00

223 lines
7.0 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.

# 整体后端接口性能测试工具说明
## 概述
这是一个整合了所有后端接口测试的统一工具将原先的10个独立测试脚本合并为一个方便统一管理和执行。
## 整合的模块
1. **基础接口** - 根路径、健康检查、404处理
2. **认证接口** - 统一登录、员工登录、登出
3. **工作台接口** - 概览、最近发布、热门产品
4. **企业接口** - 企业列表、统计、信息、修改密码
5. **图片接口** - 图片列表、仪表盘、标签管理
6. **日志接口** - 操作日志、日志文件列表、文件内容
7. **文章接口** - 文章列表、仪表盘、详情
8. **员工接口** - 员工列表、统计
9. **作者接口** - 作者列表、科室列表、搜索
10. **搜索服务接口** - 独立搜索服务(需单独启动)
## 配置说明
### 基础配置
在脚本顶部可配置:
```python
# API配置
API_BASE_URL = "http://127.0.0.1:8216" # 主服务地址
SEARCH_API_BASE_URL = "http://127.0.0.1:8321" # 搜索服务地址
USERNAME = "13621242430" # 登录用户名
PASSWORD = "admin123" # 登录密码
```
### 模块开关配置
可以根据需要开启或关闭特定模块的测试:
```python
TEST_MODULES = {
'basic': True, # 基础接口
'auth': True, # 认证接口
'dashboard': True, # 工作台
'enterprise': True, # 企业
'image': True, # 图片
'log': True, # 日志
'article': True, # 文章
'employee': True, # 员工
'author': True, # 作者
'search': False, # 搜索服务(默认关闭)
}
```
## 使用方法
### 基本使用
```bash
# 直接运行
python 测试整体后端接口性能.py
```
### 自定义配置
1. **只测试特定模块**
修改 `TEST_MODULES` 字典,将不需要测试的模块设为 `False`
2. **修改服务地址**
修改 `API_BASE_URL``SEARCH_API_BASE_URL`
3. **修改登录账号**
修改 `USERNAME``PASSWORD`
## 输出结果
测试完成后会生成两个CSV文件
1. **性能测试结果文件**
- 文件名格式:`整体后端接口性能测试_YYYYMMDD_HHMMSS.csv`
- 包含字段:
- module: 所属模块
- endpoint: 接口路径
- method: HTTP方法
- status_code: 状态码
- elapsed_time_ms: 耗时(毫秒)
- success: 是否成功
- error: 错误信息
2. **接口文档文件**
- 文件名格式:`整体后端接口文档_YYYYMMDD_HHMMSS.csv`
- 包含字段:
- module: 所属模块
- endpoint: 接口路径
- method: HTTP方法
- description: 接口描述
- auth: 是否需要认证
## 控制台输出
测试过程中会显示:
1. **测试配置** - 显示启用/禁用的模块
2. **登录信息** - 登录结果和耗时
3. **各模块测试进度** - 实时显示每个接口的测试状态
4. **整体测试摘要** - 总体统计信息
5. **各模块统计** - 按模块分组的统计信息
示例输出:
```
================================================================================
整合后端接口性能测试工具
测试时间: 2024-12-29 15:30:00
主服务地址: http://127.0.0.1:8216
搜索服务地址: http://127.0.0.1:8321
================================================================================
测试配置:
--------------------------------------------------------------------------------
启用的模块 (9个): basic, auth, dashboard, enterprise, image, log, article, employee, author
禁用的模块 (1个): search
--------------------------------------------------------------------------------
================================================================================
正在登录...
✓ 登录成功,耗时: 156.23ms
================================================================================
[1/10] 基础接口测试
================================================================================
...
================================================================================
整体测试摘要
================================================================================
总测试数: 45
成功: 42 (93.3%)
失败: 3 (6.7%)
平均耗时: 45.67ms
最大耗时: 234.56ms
最小耗时: 12.34ms
================================================================================
各模块统计:
--------------------------------------------------------------------------------
基础接口 | 测试: 7 | 成功: 7 | 成功率: 100.0% | 平均耗时: 23.45ms
认证接口 | 测试: 3 | 成功: 3 | 成功率: 100.0% | 平均耗时: 156.78ms
工作台 | 测试: 5 | 成功: 5 | 成功率: 100.0% | 平均耗时: 34.56ms
...
--------------------------------------------------------------------------------
✓ 性能测试结果已保存到: 整体后端接口性能测试_20241229_153000.csv
✓ 接口文档已保存到: 整体后端接口文档_20241229_153000.csv
✓ 测试完成!
- 性能数据: 整体后端接口性能测试_20241229_153000.csv
- 接口文档: 整体后端接口文档_20241229_153000.csv
```
## 优势
相比原先的10个独立脚本整合后的优势
1. **统一管理** - 一个脚本管理所有接口测试
2. **配置灵活** - 可以快速开启/关闭特定模块
3. **结果集中** - 所有测试结果汇总到一个文件
4. **统计完善** - 提供整体和分模块的详细统计
5. **易于维护** - 修改配置和代码更方便
6. **执行高效** - 避免重复登录,一次性完成所有测试
## 注意事项
1. **搜索服务** - 搜索服务模块默认关闭因为它需要单独启动端口8321
2. **登录账号** - 确保使用的账号有足够的权限访问所有接口
3. **网络环境** - 确保能访问配置的服务地址
4. **超时设置** - 所有请求默认30秒超时如需调整可修改 `timeout=30` 参数
## 与原脚本的对应关系
| 整合脚本模块 | 原始脚本文件 |
|------------|-------------|
| basic | 测试基础接口性能.py |
| auth | 测试认证接口性能.py |
| dashboard | 测试工作台接口性能.py |
| enterprise | 测试企业接口性能.py |
| image | 测试图片接口性能.py |
| log | 测试日志接口性能.py |
| article | 测试文章接口性能.py |
| employee | 测试员工接口性能.py |
| author | 测试作者接口性能.py |
| search | 测试搜索服务接口性能.py |
## 故障排查
### 登录失败
- 检查用户名和密码是否正确
- 检查服务是否正常运行
- 检查网络连接
### 某些接口失败
- 查看错误信息了解具体原因
- 检查账号权限
- 检查数据库连接
- 检查企业ID绑定图片、文章等接口需要
### 搜索服务无法连接
- 确认搜索服务已启动flask_wht_server_search.py
- 确认端口8321未被占用
-`TEST_MODULES['search']` 设为 `True`
## 扩展建议
如需添加新的测试模块:
1.`TEST_MODULES` 中添加新模块开关
2. 创建对应的 `test_xxx_apis(token)` 函数
3.`main()` 函数中调用新函数
4. 添加对应的 API 文档记录
## 联系支持
如有问题或建议,请联系开发团队。