让 Claude 帮你写 API 测试!TypeScript + Python 双栈覆盖

写 API 测试的时候,你还在 Postman 里手点,或者对着 curl 命令复制粘贴吗?

说实话,这俩方案在 AI 时代都有点过时了——要么靠人工肉眼看响应,要么每次改参数都要重新拼命令。效率低不说,还容易出错。

今天推荐一个 Claude Code Skill——api-testing,来自 laurigates/claude-plugins 仓库,GitHub 58 星。它做的事情很简单:让 Claude 直接帮你写、跑、验证 API 测试用例,覆盖 TypeScript(Supertest)和 Python(httpx + pytest)两套生态。

为什么值得看

这个 Skill 不是那种”帮你调接口看看结果”的简单封装。它给出的工作流是正经工程师级别的:

  • 请求构造:支持 GET/POST/PUT/PATCH/DELETE,带 header、query 参数、request body,想怎么组合都行
  • 响应断言:状态码、header、JSON schema、数据类型,全部覆盖
  • 认证流程:Bearer token、cookie、OAuth 流程,都有现成模式
  • 错误处理:4xx/5xx 的验证、validation error 的结构校验,不用自己写正则
  • 认证测试:自带 login → 获取 token → 带 token 访问受保护接口的完整流程模板

用起来大概长这样:

TypeScript + Supertest

import request from 'supertest'
const response = await request(app)
  .post('/api/users')
  .send({ name: 'John', email: 'john@example.com' })
  .expect(201)
expect(response.body).toMatchObject({ id: expect.any(Number) })

Python + httpx + pytest

response = client.post("/api/users", json={"name": "John", "email": "john@example.com"})
assert response.status_code == 201
assert response.json()["id"]

两个语言栈的写法几乎对称,风格都很干净,不会有那种”AI 生成的测试代码看起来像在凑字数”的感觉。

适用场景

  • 后端开发过程中,写接口测试用例替代 Postman/Bruno
  • CI 里跑 API 冒烟测试,检查每次 PR 的接口是否还活着
  • 对接第三方 API 时,先用 Skill 快速摸清接口契约
  • 维护老项目,补测试覆盖率——让 Claude 边读代码边补测试

怎么装

Claude Code 用户一行命令搞定:

npx skills add laurigates/claude-plugins --skill api-testing --agent claude-code

装完之后直接跟 Claude 说”帮我写这个接口的测试”,Skill 就会自动加载对应的测试模式和模板。

客观说,这个 Skill 的边界感很清晰——它不教你架构设计,不做性能压测,就专注在”写好 API 测试”这一件事上。这种克制的设计反而让它更好用。

GitHub 仓库里还有配套的 api-tests Skill(另一个),做的是 Pact/OpenAPI 契约测试,两者配合起来基本覆盖了 API 质量保障的主要场景。感兴趣可以一起装。

https://github.com/laurigates/claude-plugins


GitHub: https://github.com/laurigates/claude-plugins

评论区

0 条评论

登录后可评论。

江望 1363 阅读