用途
本技能用于通过阿里云性能测试服务(PTS)的 OpenAPI/SDK 管理 PTS,支持以下目标:
- 测试场景的清单与检查
- 压测规划与生命周期自动化
- 报告与指标获取,用于验证和故障排查
前置条件
- 配置最小权限的阿里云凭证。
- 安装 Python SDK(建议使用虚拟环境):
python3 -m venv .venv
. .venv/bin/activate
python -m pip install -U alibabacloud_pts20201020 alibabacloud_tea_openapi
- 优先使用环境变量:
- ALICLOUD_ACCESS_KEY_ID
- ALICLOUD_ACCESS_KEY_SECRET
- 可选 ALICLOUD_REGION_ID
- 在执行变更操作前,先运行只读 API 发现与当前状态检查。
凭证优先级
- 环境变量:ALICLOUD_ACCESS_KEY_ID / ALICLOUD_ACCESS_KEY_SECRET / ALICLOUD_REGION_ID
- 共享凭证文件:~/.alibabacloud/credentials
如果区域或环境不明确,请在变更操作前与用户确认。
工作流
- 确定目标区域、测试场景标识和操作范围。
- 运行 API 发现以确认 API 名称和所需参数。
- 先执行只读 API(List* / Get* / Describe*)。
- 仅在确认回滚方案和变更窗口后执行变更操作。
- 将输出和证据保存到 output/alicloud-observability-pts/。
API 发现
- 产品代码:PTS
- 默认 API 版本:2020-10-20
- 元数据来源:https://api.aliyun.com/meta/v1/products/PTS/versions/2020-10-20/api-docs.json
最小可执行快速开始
python skills/observability/pts/alicloud-observability-pts/scripts/list_openapi_meta_apis.py
可选参数:
python skills/observability/pts/alicloud-observability-pts/scripts/list_openapi_meta_apis.py \
--product-code PTS \
--version 2020-10-20 \
--output-dir output/alicloud-observability-pts
列出场景(只读):
python skills/observability/pts/alicloud-observability-pts/scripts/list_pts_scenes.py \
--region cn-hangzhou \
--page-number 1 \
--page-size 10 \
--output output/alicloud-observability-pts/scenes.txt
启动一个场景(变更操作):
python skills/observability/pts/alicloud-observability-pts/scripts/start_pts_scene.py \
--region cn-hangzhou \
--scene-id <scene-id> \
--wait \
--output output/alicloud-observability-pts/start-result.json
停止一个场景(变更操作):
python skills/observability/pts/alicloud-observability-pts/scripts/stop_pts_scene.py \
--region cn-hangzhou \
--scene-id <scene-id> \
--wait \
--output output/alicloud-observability-pts/stop-result.json
常用操作映射
- 场景清单:ListPtsScene, GetPtsScene, ListOpenJMeterScenes, GetOpenJMeterScene
- 场景生命周期:CreatePtsScene, SavePtsScene, ModifyPtsScene, DeletePtsScene, DeletePtsScenes
- 测试执行控制:StartPtsScene, StopPtsScene, StartTestingJMeterScene, StopTestingJMeterScene
- 调试控制:StartDebugPtsScene, StopDebugPtsScene, StartDebuggingJMeterScene, StopDebuggingJMeterScene
- 报告/指标:ListPtsReports, GetPtsReportDetails, GetPtsSceneRunningData, GetPtsSceneRunningStatus
分组 API 列表见 references/api_quick_map.md。
脚本目录
- scripts/list_openapi_meta_apis.py:获取元数据并生成 API 清单文件。
- scripts/list_pts_scenes.py:分页列出 PTS 场景。
- scripts/start_pts_scene.py:启动场景,可选轮询运行状态。
- scripts/stop_pts_scene.py:停止场景,可选轮询直到非运行状态。
输出策略
将生成的文件和执行证据写入:output/alicloud-observability-pts/
验证
mkdir -p output/alicloud-observability-pts
for f in skills/observability/pts/alicloud-observability-pts/scripts/*.py; do
python3 -m py_compile "$f"
done
echo "py_compile_ok" > output/alicloud-observability-pts/validate.txt
通过标准:命令退出码为 0,且生成 output/alicloud-observability-pts/validate.txt。
输出与证据
将产物、命令输出和 API 响应摘要保存到 output/alicloud-observability-pts/ 下。在证据文件中包含关键参数(区域/资源 ID/时间范围)以便复现。
参考
- 来源列表:references/sources.md
- API 快速映射:references/api_quick_map.md
- 请求/响应模板:references/templates.md