SuperAPI AI 工具集

route-tester

编程与开发

查看项目

更新于 10-15 17:27

技能介绍

用途:为测试 HTTP API 路由与端点提供与框架无关的指导,适用于 Express、Next.js API Routes、FastAPI、Django REST、Flask 等后端框架。

主要能力:

  1. 测试类型分层:单元测试(隔离路由处理器、mock 依赖、快速执行、聚焦业务逻辑)、集成测试(完整请求/响应循环、真实测试数据库、含认证流程)、端到端测试(客户端视角、完整认证流程、真实或近似真实服务)。
  2. 认证测试模式:JWT Cookie 认证(先登录获取 set-cookie 中的 JWT,再在受保护路由请求中通过 Cookie 头携带,并测试无 Cookie 时返回 401);JWT Bearer Token 认证(登录获取 token,通过 Authorization: Bearer 头携带)。
  3. HTTP 方法测试:GET(分页、查询参数过滤)、POST(创建成功返回 201、无效数据返回 400)、PUT/PATCH(更新字段、不存在资源返回 404)、DELETE(成功返回 204、未授权返回 401)。
  4. 响应校验:状态码覆盖 200/201/204/400/401/403/404/500;响应 schema 校验(字段类型与枚举)。
  5. 错误处理测试:结构化错误响应、数据库错误优雅处理、生产环境错误信息脱敏。
  6. 测试生命周期:beforeAll/afterAll 初始化与关闭测试数据库,beforeEach/afterEach 播种与清理数据。
  7. 框架测试库参考:Express 用 supertest、jest、vitest;Next.js API Routes 用 @testing-library/react、next-test-api-route-handler;FastAPI 用 pytest、httpx;Django REST 用 django.test.TestCase、rest_framework.test;Flask 用 pytest、flask.testing。
  8. 最佳实践与常见陷阱:描述性测试名、覆盖正常与边界场景、测试相互独立、使用贴近生产的数据、测试后清理、mock 外部依赖、测试认证边界情况、校验响应 schema、测试限流与 CORS 头;避免测试间共享状态,每个测试创建新鲜状态。
  9. 附加资源目录:http-testing-fundamentals.md、authentication-testing.md、api-integration-testing.md。

使用方式:按技能提供的测试结构组织用例,遵循 Arrange-Act-Assert,认证模式通过 beforeEach 登录获取凭据后用于受保护路由测试。资料未提供具体安装命令、收费信息或平台限制。