SuperAPI AI 工具集

test-fixtures-factory

测试与质量

查看项目

更新于 10-16 05:54

技能介绍

用途:为测试实体生成类型化的 builder 式工厂系统,默认值读起来像真实数据,覆盖字段时无需重建整个对象。适合测试反复出现大型对象或需要可复用测试数据的场景。

主要能力:先做发现(实体结构、语言与测试运行器、ORM 持久化、关联实体、已有工具如 fishery 或 @anatine/zod-mock、唯一字段约束),再决定架构。默认采用函数式 builder 模式:单个 build(overrides?) 函数加 traits 预设,无外部依赖,支持 TypeScript 推断。唯一字段用模块级序列计数器而非 Math.random()。默认使用可信值(如 'Alice Example'、'alice@example.com'),不用 faker 生成默认值以免产生不可复现的失败。

使用方式:每个实体一个工厂文件,包含 build、traits、buildList 和可选的 resetSequence;需要数据库行时加 async create(db, overrides),内部调用 build 并返回数据。关联实体不自动构建嵌套对象,用稳定默认 ID,由测试显式连线。多工厂用 index.ts 重新导出。

限制:资料未提供安装命令、具体版本、收费或平台信息;fishery 已安装时应改用其 Factory.define() API。