用途:编写与调试测试,覆盖单元、集成、e2e,以及数据管道、ML、基础设施等领域。测试金字塔比例、覆盖率目标、风险优先级与 flaky 测试诊断见 loom-test-strategy;浏览器/Playwright/Cypress 见 loom-e2e-testing。
主要能力:给出测试替身分类(Dummy、Stub、Spy、Mock、Fake)及误用后果;AAA 结构与命名规范 test_<unit><scenario><expected>;确定性要求(不用 sleep、冻结时钟、种子化 RNG、隔离共享状态、顺序无关);覆盖率作为下限而非目标,建议分支覆盖与变异测试(mutmut、cargo-mutants、StrykerJS);Python pytest、JS/TS Vitest/Jest、Rust 内置测试与 mockall 的框架模式;数据管道、ML、IaC 的领域断言示例;反模式与测试目录组织。
使用方式:按工作流先映射被测单元,再选择测试层级,尽量先写失败测试(TDD),用 AAA 组织,每个测试一个逻辑断言。@patch 需指向被测模块中的使用位置而非定义位置;JS 用 vi.useFakeTimers(),Rust 用 #[should_panic(expected=...)] 需谨慎。
适用场景:需要编写或重构测试、消除 flaky、选择测试替身、设计领域测试断言时。
限制:具体覆盖率目标、金字塔比例与 flaky 诊断表未在本资料中提供,需参考 loom-test-strategy;e2e 浏览器细节需参考 loom-e2e-testing。