您好,欢迎来到12图资源库!分享精神,快乐你我!我们只是素材的搬运工!!
  • 首 页
  • 当前位置:首页 > 开发 > WEB开发 >
    引荐4个适用的微效劳测试策略
    时间:2018-09-17 21:56 来源:网络整理 作者:网络 浏览:收藏 挑错 推荐 打印

    9月15日技术沙龙 | 与东华软件、AWS、京东金融、饿了么四位大咖讨论精准运维!

    引荐4个适用的微效劳测试策略

    微效劳架构并不是一种新的架构形式,但它的不断开展为那些寻求企业级私有云处置方案的公司,带来了诸多益处,将大型一体化架构运用拆分为可组合的微效劳,赋予企业独立扩展和维护每个组件的才能以及DevOps才能。

    当然,微效劳架构的散布式和独立性也带了许多应战,而本文讲谈谈如何克制测试多个可独立部署组件时能够会遇到的应战。

    单元测试(Unit Testing)

    单元测试的范围可以是一组效劳(社会性单元测试),也可以是独自的一个效劳(独立单元测试)。被测试的单元粒度越小,就越容易确定模块的行为、查明相关collaborators以及对象与依赖之间的交互。由于单元的复杂度较低,QA工程师可以经过单元测试策略来评价单元能否与collaborators隔离。社会性单元测试和独立单元测试常常会在同一个代码库中同时停止,以处置不同的测试成绩。

    测试domain layer的目的是模拟DML语句并证明一切collaborators都以正确的顺序运用真实的domain objects。在单元测试时期,工程师可以验证用于生成map responses的逻辑或来自外部远程依赖项的其他央求。就资源和效劳层而言,验证每个组件能否与collaborators正确交互,将可以可重复且分歧的方式监视央求/照应周期。

    集成测试(Integration Testing)

    集成测试在分段环境中停止,以在剖析通讯途径的功用和它们之间的交互之后集成各个效劳。与单片或SOA不同,微效劳架构依赖于进程间通讯(IPC)机制来正常运转,这就是为什么必须验证效劳之间的交互。

    我们需求编写自动化测试,以经过与外部效劳和数据存储的集成来映射成功或错误的状况。运转网关集成测试将在协议级别上破坏接口错误,例如不正确的SSL处置和丧失的HTTP标头。耐久性集成测试确保每个组件和协议客户端必须在超时和部分失败的状况下作为外部依赖停止照应。

    契约测试(Contract Testing)

    契约测试是一种用于验证外部效劳调用与其API Provider endpoint之间契约的黑盒子。普通有两种契约测试:

    集成契约测试

    消费者驱动(consumer-driven)契约测试

    在集成契约测试中,每个组件都需求独立调用,并且必须满足消费效劳(consumer)预期的契约协议。处置这个成绩的最佳办法是对double停止测试。另一方面,活期运转一组独自的测试以确认测试double没有变化至关重要。不过,一单出现测试失败,会降低部署管道的速度并破坏IT基础架构或散布式系统的功用。处置间歇性测试失败的最佳办法之一是更新测试double,同时能够也需求更新代码,以便可以使其恢复到与外部效劳分歧的形状。

    在消费者驱动的契约测试中,消费者将描画他们想要运用效劳的方式。消费者契约可以在消费者和消费者之间以相互赞同的言语和形式停止。效劳提供商将针对各个契约的正本测试效劳,然后对该特定效劳停止更改,而不会影响其他效劳的性质。

    End-to-End测试(End-to-End Testing)

    End-to-End(E2E)测试用于确定整个系统正常运转以及网络基础设备(负载平衡器、防火墙等)已正确配置。End-to-End测试需求以最精细的粒度运转以测试整个系统的功用。在此,QA工程师验证完选集成进程的行为,并确保系统总体上满足其业务需求,而不管运用的效劳组件体系结构如何。在功用测试的协助下,开发人员可以确定集成系统或运用能否按要求的规则运转。

    【编辑引荐】

    强强联手,GCC 编译器吸纳 OpenRISC 作为架构端口

    如何设计一个麻雀般的微型散布式架构?

    模块化量子计算架构关键组件开发成功

    (责任编辑:admin)