用途:为 Effect 应用编写测试,覆盖单元测试、集成测试,以及并发与资源管理代码的验证。主要能力:用 Effect.gen 编写测试程序并通过 Effect.runPromise 运行;用 Effect.runPromiseExit 与 Exit、Cause 检查成功与失败;用 Layer.succeed、Layer.effect 构建测试层与有状态模拟层;用 Ref 记录调用实现 spy 层;测试错误捕获、传播与重试;测试 Effect.all 并发、Fiber 中断、Effect.scoped 与 addFinalizer 的清理;结合 fast-check 做属性测试。使用方式:在 vitest 等测试框架中,将业务逻辑写成 Effect 程序,通过 Effect.provide 注入测试层后运行断言。限制与注意:需提供所需层,避免共享状态导致测试相互干扰,不要只测成功路径,需验证 finalizer 执行与中断行为,避免过度模拟和依赖固定时序。具体安装命令与版本信息暂未提供。
effect-testing
测试与质量
更新于 10-16 02:28