SuperAPI AI 工具集

backend-testing

编程与开发

查看项目

更新于 10-15 16:45

技能介绍

用途:该技能用于编写完整的后端测试,包括单元测试、集成测试和 API 测试,适用于测试 REST API、数据库操作与认证等场景。触发场景包括:新功能开发时用 TDD 先写测试、新增 API 端点时测试成功与失败用例、修复 Bug 时补充回归测试、重构前编写保证现有行为的测试,以及搭建 CI/CD 自动化测试流水线。

使用方式:需向技能提供必要信息,包括框架(如 Express、Django、FastAPI、Spring Boot)、测试工具(如 Jest、Pytest、Mocha/Chai、JUnit)、测试目标(API 端点、业务逻辑、数据库操作);可选提供数据库(PostgreSQL、MySQL、MongoDB,默认内存数据库)、Mock 库、覆盖率目标(默认 80%)、E2E 工具(如 Supertest、TestClient、RestAssured)。

主要步骤:一、搭建测试环境,安装测试库并配置测试数据库与独立环境变量(如 .env.test),配置 jest.config.js 或 pytest.ini;二、编写单元测试,测试纯函数、通过 Mock 隔离依赖、覆盖边界值,采用 AAA(Arrange-Act-Assert)模式;三、编写 API 集成测试,覆盖成功与失败状态码、输入校验、鉴权测试;四、测试认证与授权,包括 JWT 令牌与基于角色的权限;五、Mock 外部依赖以保证测试隔离,如外部 API、邮件发送、文件系统、时间函数。

安装示例:npm install --save-dev jest ts-jest @types/jest supertest @types/supertest。建议的测试脚本包括 test、test:watch、test:coverage、test:ci。

限制与规则:每个测试必须可独立运行,用 beforeEach/afterEach 重置状态,不得依赖执行顺序;测试名称需清晰表达验证内容;禁止使用生产数据库,必须使用独立或内存数据库;禁止真实调用外部 API,须全部 Mock;禁止滥用 sleep/超时,应使用 fake timers;不得硬编码密钥或密码,使用 .env.test 等独立环境变量。资料未提供关于该技能收费、价格、平台支持或具体效果的信息。