test/framework/README.md
2026-03-17 14:59:41 +08:00

46 lines
1.7 KiB
Markdown

# Robogo 自动化测试框架
该框架基于 Python 实现,旨在将 API 通用逻辑、业务流程和配置信息解耦,方便不同基础的人员快速编写业务测试脚本。
## 目录结构说明
- `framework/core/`: **核心基类层**。包含 `BaseAPI` (封装了请求、鉴权、响应检查)、`logger` (统一日志)、`exceptions` (异常定义)。
- `framework/business/`: **业务服务层**。按业务领域(云桌面、开发机、账单等)封装原子操作。
- `framework/config/`: **配置层**。统一管理 URL、Token、资源 ID 等配置。
- `framework/models/`: **模型层**。定义 `StepResult` 等通用数据结构。
- `framework/scripts/`: **业务逻辑层 (脚本区)**。在此处调用业务服务类编写具体的测试流。
## 快速上手
### 1. 编写一个新脚本
`framework/scripts/` 下创建一个 `.py` 文件,例如 `my_test.py`:
```python
from framework.business.cloud_desktop import CloudDesktopService
from framework.config.settings import Config
def test_flow():
# 初始化服务
service = CloudDesktopService()
# 直接调用业务方法
desktop_id = service.create_desktop("我的测试机")
print(f"创建成功: {desktop_id}")
# 更多操作...
service.stop_desktop(desktop_id)
if __name__ == "__main__":
test_flow()
```
### 2. 更新配置
直接修改 `framework/config/settings.py` 中的 `AUTH_TOKEN` 或相关 `ID` 即可,全局生效。
---
## 优势
- **低门槛**: 业务人员只需关注 `scripts/` 下的逻辑,无需关心复杂的 Header 构造和错误处理。
- **易维护**: 接口变更只需在 `business/` 层修改一处。
- **可扩展**: 支持后续加入 `BaseUI` (如 Playwright) 扩展 UI 自动化能力。