架构模式: 服务集成契约测试
架构模式: 服务集成契约测试
上下文
您已应用微服务架构模式。该应用程序包含许多服务。服务通常会调用其他服务。您必须编写自动化测试,以验证服务是否正常运行。
问题
如何轻松测试服务是否提供了客户期望的API?
要点
- 端到端测试(即启动多个服务的测试)是困难,缓慢,脆弱和昂贵的。
结论
服务的测试套件,由使用它的另一个服务的开发人员编写。测试套件验证服务是否满足消费者服务的期望。
例子
Spring Cloud Contract是一个支持这种测试方式的开源项目。
结果上下文
这种模式具有以下好处:
- 单独测试服务更容易,更快速,更可靠,更便宜
这种模式有以下缺点:
- 测试可能会通过,但应用程序将在生产中失败
此模式存在以下问题:
- 如何确保消费者提供的测试与消费者实际需要的测试相匹配?
posted on 2019-08-03 09:11 yaofengspark 阅读(285) 评论(1) 编辑 收藏 举报