微服务测试:耦合与内聚(一路到底)

主要观点:过去几周作者与 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”等。
阅读 5
0 条评论