SuperAPI AI 工具集

testing-fullstack

测试与质量

查看项目

更新于 10-15 20:31

技能介绍

用途:为全栈项目建立以风险为导向的测试体系,测试行为而非私有实现,主张少量稳定测试优于大量脆弱测试。

测试金字塔:单元测试覆盖领域逻辑、工具函数、ViewModel、策略与 schema;集成测试覆盖 API 与数据库(或 testcontainers)、带 provider 的 hooks;E2E 用 Playwright 覆盖关键用户流程,不把所有内容都推到 E2E。

优先覆盖:授权与归属、支付与不可逆变更、schema 校验与错误、注册/结账/核心实体增改等主流程,以及已发生过的回归(bug 转测试)。

工具:Vitest(或项目现有 Jest)用于单元与集成;Testing Library 以用户方式交互(getByRole),避免实现细节;Playwright 使用稳健选择器、认证 fixtures 与逐测试隔离;前端 HTTP 可用 MSW。

实践:Arrange/Act/Assert 清晰;复用 fixtures 与 factories,避免复制巨大 payload;只在边界 mock,不 mock 被测系统;保证确定性,不依赖真实时钟或网络;命名采用“当[条件]时应[行为]”。

反脆弱:避免固定 waitForTimeout,改为等待条件;数据库隔离用事务回滚或按 worker 清理;种子数据最小且显式;CI 中重试仅作最后手段并需调查。

CI:每个 PR 跑类型检查与单元测试;E2E 视成本在 PR 或 main 运行;关键路径测试失败应阻断。

完成标准:至少覆盖本次变更的风险;测试可读且确定;E2E 只覆盖重要流程;CI 运行相关套件;不对无关标记做脆弱断言。

限制:资料未提供具体安装命令、版本要求、价格或平台支持信息。