Mock 与测试策略
GraphQL Mock 与测试策略实战:@graphql-tools/mock 的 addMocksToSchema、MockList、faker 集成与确定性种子、Schema 快照与 mock 驱动的前端开发、resolver 单元测试、executeOperation 集成测试、MSW 客户端拦截、联邦子图 mock、测试数据管理与 CI 分层。
tag
GraphQL Mock 与测试策略实战:@graphql-tools/mock 的 addMocksToSchema、MockList、faker 集成与确定性种子、Schema 快照与 mock 驱动的前端开发、resolver 单元测试、executeOperation 集成测试、MSW 客户端拦截、联邦子图 mock、测试数据管理与 CI 分层。
系统讲解服务虚拟化与 Mock 策略:测试替身谱系(Dummy/Stub/Spy/Mock/Fake)的语义边界、各测试层级该 Mock 什么、WireMock 的请求匹配与状态化桩、Mountebank 多协议虚拟化、MSW 前端网络拦截、契约协同避免过度 Mock、Stub 漂移的检测与治理,以及 Mock 反模式与替代方案。
Go 测试与基准工程实践:表驱动测试、子测试与辅助函数、Mock 与测试替身、Fuzz 模糊测试、基准测试与 pprof 分析、覆盖率与 CI 集成,构建从单元到性能的质量闭环。
单元测试是现代 C++ 工程质量的基石。本文对比 Google Test、Catch2 和 Doctest 三大主流测试框架的断言风格、测试夹具、参数化测试能力;深入讲解 Google Mock 的模拟对象与行为期望设定;并覆盖测试覆盖率工具 gcov/lcov 的集成,帮助你在 CI/CD 中建立可度量的质量门禁。
本节给 TaskAPI 的 Service 层做依赖隔离:先区分 dummy/stub/spy/fake/mock 五种测试替身,再说明 Go 如何用「接口即接缝」天然支持替换,然后手写一个记录调用并能注入错误的 fakeStore,用它验证标题校验、ID 回读与错误透传三条路径,并讨论为什么 Go 社区更推崇手写 fake 而非生成式 mock。
系统覆盖 Vite Dev Server 与后端的协作工程:为什么前端开发需要代理、server.proxy 的完整配置(target/changeOrigin/rewrite)、API 路径重写与转发规则、HTTPS 与 WebSocket(wss)代理、本地 Mock 方案(中间件/vite-plugin-mock)与真实后端切换、多环境配置(dev/staging/prod 的 proxy 差异)、前后端分离联调工作流(契约先行/环境矩阵),以及代理故障排查,帮助团队把「前后端联调」从手工拼接口地址变成标准化的开发基建。
系统覆盖 TypeScript 项目的完整测试策略:Vitest 与测试框架选型、类型测试(expect-type/tsd)与编译期断言、单元测试最佳实践、测试替身(mock/stub/spy)、测试数据与工厂模式、覆盖率与 CI 集成、以及类型驱动的测试设计。
全面掌握 Lua 测试工程化:busted 测试框架的 BDD 语法、luassert 断言库、stub/spy/mock 行为验证、luacov 覆盖率统计,以及 GitHub Actions CI 集成与可维护测试的组织实践。
系统讲解 PHP 测试工程化:从 PHPUnit 基础断言到数据提供器,从 Mock 对象到 Test Double,从单元测试到集成测试与浏览器级测试,再到 Pest 现代语法的对比,最后给出测试金字塔与 CI 门禁的最佳实践。
从测试数据管理问题出发,系统讲解 Object Mother、Builder、Fixture、Mock、Contract Testing 到 Testcontainers 的完整链路,涵盖多语言工厂模式、数据库测试策略和环境隔离方案。
系统对比三大主流单元测试框架 pytest、JUnit 5、Go testing 的深度特性,涵盖 FIRST 原则、AAA 模式、Mock 策略、Table-Driven Tests、Benchmark,以及单元测试粒度、可测性设计和常见反模式。
把测试从单条函数升级为可复用、可组合的工程:讲清 fixture 的参数注入与四种作用域、yield 拆解、conftest.py 层级发现、tmp_path 与 monkeypatch,再用 parametrize 和 unittest.mock 演示 patch 该打在哪一层、autospec 与 call_args 怎么用。
系统讲解Go语言测试技术,涵盖单元测试、基准测试、并发测试、Mock测试和模糊测试等内容,帮助开发者建立可靠的代码质量保障体系
很多初学者一听到”单元测试”,就想到 mock 框架。其实 Go 里最常用、最舒服的测试替身,往往只是一个小结构体。你定义一个刚好够用的小接口,测试里手写 fake 或 spy,就能验证业务逻辑,而不用真的发邮件、调支付或连外部 API。