主要观点:过去几周作者与 Andrew Morgan 一起在多个地方教授微服务测试工作坊,发现微服务测试的“最佳实践”仍在发展,开始出现一些当前挑战和潜在反模式。
关键信息:
- 测试微服务项目时,要考虑耦合和内聚,避免过度依赖“单体”端到端测试等。
- 架构上要注重耦合和内聚,如定义良好的接口等。
- 测试时要注意避免分布式单体,可利用 IDLs 和合同工具来定义和测试服务间集成,隔离服务内测试等。
- 高度耦合的微服务测试要注意独立部署,利用 IDLs 和合同工具,避免测试框架和基础设施配置过度耦合。
- 低内聚的微服务测试要明确各测试类别目标,避免“所有测试测试所有东西”。
重要细节: - 提到的相关材料如 Toby Clemson 的 2014 年作品、Cindy Sridharan 的“Testing Microservices, the sane way”、作者自己的尝试等。
- 介绍的各种“单体”类型,如应用单体、数据库连接单体等。
- 测试工具如 gRPC、Avro、Pact、Spring Cloud Contract、Hoverfly、Mountebank、WireMock 等的作用。
- 引用的相关书籍如“Agile Testing”“More Agile Testing”等。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。