那些年向前冲|微服务下产品集成和集成测试框架流程( 二 )
其二:微服务两两之间上下游通过API接口服务间的服务集成
对于微服务两两间的横向集成主要是通过微服务提供的API接口服务集成 , 因此一方面是微服务需要和自身需要消费的提供业务服务能力的上游微服务组件集成获取输入信息和输出;一方面微服务本身也提供相应的API接口服务 , 需要配合下游的微服务组件进行服务集成和联调 。
对于该步骤的集成重点是保证组件上下游之间能够集成通过 , 业务和数据能够正常流转 , 其集成的主要依据是组件概要设计中的服务接口设计进行 。
其三:基于端到端业务场景的跨多个微服务之间的集成
【那些年向前冲|微服务下产品集成和集成测试框架流程】在微服务两两集成通过后 , 接着的关键步骤就是根据端到端的业务场景进行跨多个业务组件的应用集成 。 确保端到端的业务流程能够在多个微服务模块协同下顺利完成 。 在这个阶段首先是需要保证组件两两集成通过 , 然后是依据相应的业务流程和业务架构文档 , 总体应用架构设计文档分析相应的业务场景 , 准备相应的业务数据进行 。
在整个应用集成过程中 , 微服务间的集成顺序和集成场景是需要重点考虑的问题 。
应用集成顺序
应用集成顺序分为两种模式:
一种是自顶向下的模式进行集成
对于自顶向下方式的集成 , 首先集成最外层或流程最末端的业务模块 , 业务模块前置依赖用模拟器(桩)实现 。 然后继续在每一层按宽度或深度优先 , 用完全实现模块代替模拟器 , 并建立下层 。 以这种方式继续直到所有被测系统中的桩已经实现和测试 。 在这种模式下可以看到整个集成过程完全是顶层需求驱动进行 , 集成工作可以较早的开始进行 , 如果产品集成图是正金字塔结构较容易 , 模拟器开发较少;反之同理 。
一种是自底向上的方式进行集成
对于自底向上集成 , 首先集成最底层的业务模块 , 只在底层模块未实现前使用模拟器(桩) 。 然后继续在实现并测试对上一级模块 , 这些构件使用已经测试的下级模块 。 整个系统使用根一级模块测试 。 对于这种模式模拟器开发较少 , 同时上次各模块基本可以开始并行测试 。 这种集成方式最大的风险是如果上次需求变化可能直接影响到最底层 。
应用集成的场景
集成场景分析目的是为后续的集成测试用例设计提供依据 , 集成测试用例要覆盖所有场景 。 对于场景分析输入主要包括跨模块协同业务流程图、系统需求规格说明书、概要设计说明书等 。
对于集成场景分析可以从静态和动态两个层面进行分析:对于静态分析主要分析模块依赖关系 , 分析某一个服务接口影响到的业务模块具体功能点 , 可以模块-》模块的矩阵分析方法进行;对于动态分析主要是根据跨系统或模块流程入手 , 分析跨模块的流程协同 , 流程协同中所涉及到的所有接口服务 。
集成场景的分析将为集成测试用例的设计提供核心输入 , 要明白 , 集成测试不是简单的接口测试 , 接口反映的是跨系统或模块的交互流程 , 需要通过交互流程的贯通来检验接口本身的正确性 。
产品集成和持续集成的关系
产品集成强调是的是把左右的组件最终能够组装和集成起来 , 形成一个完整的系统 。
Martin Fowler对持续集成是一种软件开发实践 , 即团队开发成员经常集成它们的工作 , 通常每个成员每天至少集成一次 , 也就意味着每天可能会发生多次集成 。 每次集成都通过自动化的构建(包括编译、发布、自动化测试)来验证 , 从而尽快地发现集成错误 。
许多团队发现这个过程可以大大减少集成的问题 , 让团队能够更快的开发内聚的软件 。 可见持续集成只能算做产品集成的一个子实践 。
推荐阅读
- 智通财经|| 远洋服务向港交所递表 在管面积约4230万平方米,新股消息
- 【】淄博这家税务局主动服务 助一湖北籍纳税人退税近40万
- 央视新闻客户端|田间地头到跨境物流,China服务安排上了
- 第一财经|住建部:房地产经纪机构应对住房租赁服务项目实行明码标价
- 央视网|直通服贸会 | 加强“一带一路”服贸合作 促进服务转型升级
- 央视网|带你逛服贸 | 文化服务专题展 规模大、颜值高、创意多
- 9月7日|远洋集团拟分拆远洋服务赴港上市 持股份额将不低于五成
- 物业|远洋集团拟分拆远洋服务赴港上市 持股份额将不低于五成
- 服务|快看 | 58同城特别股东大会通过私有化协议,获75%得票比例
- 央视新闻|第三届“一带一路”服务贸易合作论坛举行
