46 lines
1.7 KiB
Markdown
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 自动化能力。
|