有效微服务测试的综合指南

有效的微服务测试 -  SCIENCESTOFT

SCIENCESSOFT一直在提供软件测试服务为32. years and 测试自动化服务20年。

微服务测试:本质

微服务测试是QA活动的组合,以确保每个微服务的性能稳定,其故障不会导致软件错误,并且所有微服务都会平稳起作用。微服务测试通常包括粒度自动化功能 性能测试, 定期回归测试, 和安全测试, 如果需要。

MicroServices测试设置计划

MicroServices测试设置计划在MicroServices项目的当前SDLC阶段以及软件要求细节上取决于大大依赖。尽管如此,还有一些普遍的阶梯。

笔记:微服务测试的最佳实践是确保大多数测试套件是自动化的,因为每次迭代的测试用例的数量可以乘以微服务的数量。每次部署新的微服务时都应该运行全面的回归测试套件。

MicroServices测试设置计划

1.微服务测试过程设计

分配QA管理器和测试自动化架构师,以确保微服务要求规格可测试性。

决定一组软件测试KPIS,用于测试测试用例粒度,测试脚本的可维护性和鲁棒性,测试用例的运行时等。您还应该考虑微服务测试质量风险和设计风险缓解计划。

由于每个微服务都是独立开发和部署的,您应该将测试工程师集成到每个交叉功能的微服务团队中,并在微服务团队之间建立协作情景。

2.内部MicroServices测试准备

为微服务测试铺平道路:

指定的QA经理

  • 准备测试策略,计划和努力估算(通常,测试工程师被分配给每个微服务,因此可能需要更多的测试工程师,具体取决于微服务架构和功能复杂性)。
  • 组装测试团队,雇用MicroServices测试中经验丰富的测试自动化人才,并考虑用于测试工程师的额外培训。

指定的测试自动化架构师

  • 考虑哪些测试场景是可重复的,稳定的,并且涉及首先自动化的高数据量。设计测试自动化架构。
  • 选择和配置相关工具和框架以实现自动功能和性能测试。
  • 决定在测试微猎犬的服务虚拟化和API模拟工具。

设计测试计划,确保以下软件测试类型对于微服务测试至关重要:

单位,集成,组件,合同测试

单位测试由开发人员编写和运行。您的测试团队可以从集成测试用例开始(验证每个微服务中的组件之间的通信路径和交互),继续到组件测试(借助API嘲笑工具验证微服务行为)和合同测试(检查微服务之间的实际通信) 。这些测试类型应包括大多数MicroServices测试套件。

它应包括在微服务级别(部署微型计算机时)和应用程序级别(部署所有微服务时)的负载,应力,耐力和可扩展性测试。

回归测试

为避免在引入新服务或API演变时避免应用程序故障,每个微服务团队中的测试工程师都应验证其微服务如何与其依赖项进行交互。

3.供应商选择外包微服务测试

如果您决定外包计算机测试,请在测试供应商选择期间您应该:

  • 考虑QA供应商,具有MicroServices测试或测试自动化方面的经验。
  • 通过ProStfices软件测试或测试自动化项目的研究。
  • 考虑测试供应商的工具和资源堆栈,以满足您的MicroServices应用程序的细节和比例。
  • 短名单3-5供应商,具有相关实践经验和资源。
  • 请求微服务从入围供应商中测试成本估算和特定于服务的演示文稿。这样,您可以了解供应商对MicroServices测试团队阵容的方法,计划的测试自动化参与,测试工具包以及因此,决定了MicroServices测试ROI。
  • 决定最合适的微服务测试供应商。
  • 协商SLA和微服务测试成本,签署协作合同。

4.微服务测试发布

要启动微服务测试过程,外包或内部测试团队应选择和配置测试环境,开始开发测试用例和测试脚本,然后缩至手动或自动测试数据生成。

微服务测试所需的团队

QA经理

  • 管理MicroServices测试过程和团队。
  • 检查每个MicroServices软件要求是否清晰,可测量和完整。
  • 根据业务和项目目标提出测试策略和计划。
  • 选择测试管理软件。

测试自动化架构师

  • 设计测试自动化架构。
  • 选择和配置测试自动化工具和框架。
  • 管理测试自动化工程师,以提高自动化测试的可维护性和粒度,降低测试执行时间。

测试自动化工程师

  • 设置测试环境和测试数据生成。
  • 开发,执行和维护自动测试脚本。
  • 评论自动生成的缺陷报告。
  • 与其他跨职能团队成员合作,提高测试脚本的可维护性和粒度。

测试工程师

  • 设计并保持测试用例。
  • 执行手动测试。
  • 通过概述的工具报告缺陷。

MicroServices测试采购模型

QA管理和实施是内部的

您可以完全控制MicroServices测试过程。同时,有风险涉及不正确的测试努力估算,缺乏测试自动化人才,一个不平衡的测试自动化策略,无关的测试工具和框架的选择。

QA管理是内部;测试团队完全或部分外部

您可以通过快速扩大QA人才的数量来优化微服务测试成本。尽管如此,您还需要一个精通的QA经理来设计测试过程,管理和定期评估微服务测试进度和外部QA团队的表现。

QA管理和团队正在外包

您可以获得良好的微服务测试,经验丰富的QA管理,测试自动化卓越和微服务测试最佳实践。尽管如此,您还应该在供应商选择过程中进行小心,并准备消除MicroServices团队中可能的沟通问题。

微服务测试工具

由于多级功能测试包括最大的微服务测试的份额,以下是适用于可用于自动功能测试的一些最流行的工具,这些工具可用于您的微野营服务测试项目。

邮差

强调

  • Gartner PEER见解客户的选择2020,以满足全生活周期API管理。
  • 全面的自动化API功能测试工具。
  • REST,SOAP,HTTP API调用和响应测试。
  • 与流行的CI / CD工具(Jenkins,Travis,Gitlab等)兼容,以将测试添加到新的或现有的CI / CD管道中。
  • 没有实际服务虚拟化的轻型模拟功能,从而不适合组件微服务测试。

最好的

自动集成,合同,端到端API测试。

价钱

开源。

苏普苏

强调

  • 属于SmartBear Family - 2019 Gartner软件测试自动化领导者。
  • 全包括自动化API功能测试。
  • 支持HTTP,SOAP,RESTful测试。
  • SOAP,REST Mock服务和服务虚拟化(具有ReadyApi)以启用API嘲笑和服务虚拟化。

最好的

AL-包含API模拟和附加服务虚拟化工具的自动化API功能测试。

价钱

  • Soapui - 开源。
  • Readyapi虚拟化 - $ 1,378 /用户/年。

Apache Jmeter.

强调

  • 用于测试软件行为和性能下的工具,在不同的连续负载下。
  • 通过HTTPS采样器等功能支持功能性测试套件。
  • 用户友好的GUI。
  • 71可自定义插件扩展核心功能。

最好的

自动负载,应力和功能测试。

价钱

开源。

微服务测试成本

每个微服务测试项目与每个微服务解决方案一样不同。让我们作为一个示例,微服务项目具有以下特征:

  • 10个月长。
  • 2-week使用测试并行进行的迭代。
  • 100 新的测试用例迭代。
  • 80% 通过自动化测试覆盖。

这种测试项目的粗略估计包括高级测试工程师的费率,测试工具的许可证测试环境成本, 将$ 50,000。

MicroServices测试成本因素包括:

对于外包选项

  • 迭代的数量。
  • 迭代的新测试用例的数量。
  • 自动化测试覆盖的百分比。
  • 测试用例/脚本开发和维护工作(复杂的端到端测试需要更多的构建和维护时间)。
  • 测试团队成员的利率。

适用于内部选项

  • 微服务的数量和部署的步伐。
  • 每个微服务功能的复杂性。
  • 所需的第三方集成的数量。
  • 微服务性能要求。
  • 测试工程师数量和测试自动化工程师。
  • 使用工具的成本(例如,许可证和测试服务器)。

了解您的MicroServices测试成本!

Sciencesoft将对MicroServices测试成本计算和ROI分析进行了解,让您故意决定测试预算并为微服务测试规划奠定基础。

考虑专业的微服务测试服务

32. 软件测试中的多年和20年 多年来在测试自动化中,Sciencesoft及时掌握了MicroServices架构的细节,以确保解决方案在各级的质量。

微服务测试咨询

  • 分析微服务应用架构和要求,现有的QA过程。
  • QA战略,微服务测试计划,测试自动化策略和架构设计。
  • 选择工具和框架最佳MicroServices测试项目。
  • 微服务测试成本和ROI计算。
  • 最佳采购模型选择。

微服务测试外包

  • QA策略,微服务测试计划,测试自动化架构设计和最优测试工具和框架配置。
  • 测试环境设置和自动化测试数据生成。
  • 测试自动化脚本开发和维护。
  • MicroServices测试符合ISO / IEC / IEEE 29119-3:2013的伪影,包括定期详细的缺陷和测试闭合报告。

关于Sciencesoft.

Sciencesoft是一个全球IT咨询,软件开发和QA公司总部位于德克萨斯州麦金尼,德克萨斯州。我们提供测试自动化服务对于MicroServices测试项目,并指导客户依据如何确保基于微服务的软件,平衡测试预算和降低测试时间的最大质量。 ISO 9001和ISO 27001认证,我们依靠成熟的质量管理体系,保证与我们的合作不会对客户的数据安全构成任何风险。