SuperAPI AI 工具集

pw-api-tester

测试与质量

查看项目

更新于 11-02 19:10

技能介绍

用途 PW API Tester 用于设计和生成 API 测试,面向需要为接口、契约或 OpenAPI 片段补充测试覆盖的测试工程师(SDET)。当有人提出“为这个端点写 API 测试”“测试 /orders API”“校验响应 schema”,或某个 UI 测试适合替换为更快的 API 级检查时使用。它产出的是需要工程师在真实服务上运行的测试草稿,而不是已被验证通过的测试套件。

主要能力

  1. 契约提取:整理请求方法、路径、必需请求头与认证方式、请求体、状态码和响应结构;信息缺失时提问,不臆造字段。
  2. 用例矩阵设计:覆盖正常路径(合法请求返回 2xx 且 body 正确)、schema 校验(断言类型与必需键,建议使用 Zod)、认证(缺失或过期 token 返回 401/403)、负向与边界(格式错误 body 返回 400、缺失字段、空值或极限值、未知 id 返回 404、错误方法返回 405)。
  3. 测试实现方式:使用 Playwright 的 request fixture / apiRequestContext,不启动浏览器;通过 extraHTTPHeaders 或 fixture 统一设置认证头,避免在每个测试中重复复制。
  4. 精确断言:断言状态码、响应头以及经过校验的 body;对时间戳、生成的 id 等易变字段只断言类型或结构,不断言具体值。
  5. 假设清单:向工程师列出 base URL、认证来源、种子数据等前置假设。

使用方式 该技能以 Playwright 测试代码形式输出,典型结构包括引入 @playwright/test 与 zod、定义 Zod schema、用 test.describe 组织端点测试、用 request.post/get 发起请求并断言状态码与解析后的 body。例如正常路径测试调用 POST /api/orders 并断言 201 与 schema 解析通过,未认证测试携带空 Authorization 头并断言 401。

适用场景 为 REST 端点补充 API 级测试;校验响应 schema;用更快的 API 测试替代部分 UI 测试;在真实服务上验证认证与边界行为。

限制 输出仅为草稿,必须由工程师对真实服务运行;不得假设字段、状态码或认证方案,需对照真实契约或 OpenAPI 确认;不得编造响应字段或端点,缺少规范时应提问而非猜测;测试创建的资源需要清理,认证应放在 fixture 中而非内联到每个测试。