SuperAPI AI 工具集

integration-e2e-testing

测试与质量

查看项目

更新于 10-16 08:39

技能介绍

用途:在编写或评审集成测试、E2E 测试时,从已验收行为出发,选择并设计能证明该行为的最小测试集,把每条证明义务分配到能暴露其失败的最便宜边界。

测试分道:integration(进程内组件交互,如 React/TS 用 RTL+MSW,文件名 *.int.test.ts,与实现同步创建);fixture-e2e(真实浏览器加确定性 fixture、后端被 mock,无需真实服务或数据库,文件名 *.fixture-e2e.test.ts,是面向用户 UI 旅程的默认分道);service-integration-e2e(跨服务契约、持久化、事务一致性等只有运行中栈才能暴露的行为,文件名 *.service-e2e.test.ts,需所需服务存在后执行)。

行为优先:候选测试须声明边界上的可观察结果、跨所测组件的实质失败、以及能复现该失败的自动化执行环境。业务逻辑正确性、数据完整性、用户可见行为、可观察错误处理留在集成/E2E;纯实现细节与数据转换路由到单元测试,性能声明走性能验证,仅布局声明走视觉/UI 检查。

骨架规范:提交的测试文件须对运行器有效,采用检测到框架的最小 pending 套件。每个测试须含注释:// AC、// Behavior(触发->过程->可观察结果)、// @lane、// @dependency、// @real-dependency(可选)、// Primary failure mode、// Proof obligation、// Verification items。属性测试用 // Property 与 // fast-check: fc.property(...),实现须用 fc.assert(fc.property(...)),发现失败用例后补具体单元测试防回归。

选择流程:读取已验收行为与证明义务,命名必须使测试失败的实质失败与暴露它的可观察状态,检索现有测试仅当边界相同且会因该失败而失败时复用,再分配到最窄充分分道,合并可一次证明的义务并保持断言到失败的清晰映射,只输出剩余最小覆盖集。

Mock 边界:测试对象为外部适配器、查询、迁移或服务契约本身时用真实边界或服务级 stub;外部 API/网络调用非被测对象时 mock;被测组件交互用真实进程内组件;调用本身即验证目标(如日志输出)用可验证 mock(vi.fn())。

评审要点:属性注释存在却未用 fast-check、行为无 expect、列出的验证项未覆盖、集成测试中 mock 内部组件、AAA 结构不清、测试间共享状态、依赖日期或随机导致不可复现,均为失败条件。共享变更多路由(CLI 与 HTTP、定时任务与手动触发、批量与单项端点)须比对校验、分类、资源上限和读/解析/变更/上报顺序四个轴;差异只能由需求、设计文档或 ADR 许可,无许可来源时须有测试通过宽松路由触发变更并断言被跳过检查所保护的状态。

资料未提供具体安装命令、收费与平台支持信息。