第一次使用?进入任务体验室,先看输入与输出的完整示例 →

接口自动化测试脚本生成器(Pytest + Requests)

输入接口文档片段与鉴权方式,产出可直接运行的 Pytest 接口测试脚本,含参数化、断言、fixture 与失败重试。

脚本代码进阶CRISPE免费AI 质量分 97
AI 生成复制 0 次

填写变量

填好变量后即可复制;未填的会保留 {{变量}} 原样。

已填 0 / 5

每行一个接口,写清方法、路径、请求体字段与类型、成功与失败响应码。字段缺失时模型必须先追问。

可选:Bearer Token / Cookie Session / API Key Header / 无鉴权。

可选:内联参数化 / 读取 JSON 文件 / 读取 CSV。影响脚本中数据加载写法。

留空则默认 pytest 7.x + requests 2.31 + Python 3.9。

开启后为网络类请求加 2 次指数退避重试,仅重试连接错误与 5xx。

预览
你是资深测试开发工程师,长期负责把接口文档转成团队可直接合入 CI 的自动化用例,风格偏保守:宁可少写花哨封装,也要保证断言精确、失败信息可定位。

【任务】根据下面的接口清单,产出一个可运行的 Pytest 接口测试脚本。

接口清单:
{{接口清单}}

鉴权方式:{{鉴权方式}}
测试数据来源:{{测试数据来源}}
框架版本约束:{{框架版本约束}}
是否包含失败重试:{{是否包含失败重试}}

【产出要求】
1. 只输出一个 Python 代码块,文件顶部用注释写明运行命令(如 pytest -v test_api.py)。
2. 结构顺序固定:imports → 配置常量(BASE_URL、超时)→ 鉴权 fixture → 数据加载函数(若数据来源非内联)→ 按接口分组的 test_ 函数。
3. 每个接口至少覆盖:成功路径 1 条 + 清单中列出的每个失败码各 1 条,用 @pytest.mark.parametrize 组织。
4. 断言必须同时校验状态码与响应体关键字段,禁止只写 assert resp.status_code == 200。
5. 失败信息要包含请求体与响应体,便于定位;用 assert 消息或自定义 helper 实现。
6. 若开启失败重试,仅对连接错误与 5xx 重试,最多 2 次,退避 0.5s/1s,不得对 4xx 重试。
7. 不得联网、不得引入清单未提及的第三方库(除 pytest、requests、标准库)。

【边界与优先级】
- 硬性要求:可运行、断言精确、覆盖成功与失败码。
- 偏好:参数化优先于复制粘贴;fixture 复用鉴权。
- 冲突时,可运行 > 覆盖完整 > 代码简洁。

【信息不足处理】
若接口清单缺少请求体字段类型、成功响应码或失败码中的任意一项,先列出你需要确认的问题(不超过 3 条),不要臆测字段后直接生成。

【输出格式】
仅一个 Python 代码块;代码块后附不超过 5 行的「运行前置条件」说明(环境变量名、数据文件路径)。不要输出与代码无关的解释段落。

还有 3 个必填变量未填,补齐后才能复制

还有 3 个变量没填。照样能跑——缺失的部分会按常见情况假设,并标注在成品末尾。

AI 评审依据

这条提示词还没有评审记录

目标模型
ChatGPT、Claude
框架
CRISPE
语言
zh-CN
作者
站方

标签

  • ci
  • 自动化脚本
  • 接口测试
  • pytest

同类提示词

依据字段规则表生成测试数据脚本,输出正常、边界、非法三类数据集,并给出每条数据的构造依据与预期校验结果。

脚本代码入门BROKE免费
AI 生成站方 · 复制 0 次

把一段模糊的缺陷描述转成最小可运行复现脚本,附环境声明、预期/实际对比与失败断言,便于提交到缺陷单。

脚本代码进阶COSTAR免费
AI 生成站方 · 复制 0 次