大数据应用测试的广泛指南

大数据应用测试 -  SCIENCESTOFT

Sciencesoft一直在渲染全部软件测试和QA服务为32. 年份和大数据服务8年。

大数据应用测试的本质

测试操作和分析部件的大数据应用程序包括应用程序的正确和平滑功能(包括测试事件流和分析工作流,DWH和非关系数据库,应用程序的复杂集成),其可用性,响应时间,最佳资源消耗,数据完整性和安全性。

大数据应用程序模式的示例 -  SCIEncesoft

如何开始大数据应用测试

大数据测试设置方案和顺序的步骤可以显著不同取决于你的业务流程,大数据应用的具体需求和架构。下面,你会发现一些常见的高级别阶段:

大数据应用测试设置计划

1.设计大数据应用测试过程

分配QA经理,以确保您的大数据应用的需求规格设计成可测试的方式。每个大数据应用的需求应该是明确的,可测量的,完整的;功能需求可以在用户故事的形式来设计。

此外,QA Manager设计了一个KPI套件,包括这种软件测试KPIS作为创建的测试用例的数量和每个迭代运行,每个迭代发现的缺陷数量,拒绝缺陷的数量,整体测试覆盖率,缺陷泄漏等等。此外,应创建风险缓解计划,以解决大数据应用测试中可能的质量风险。

在这个阶段,你应该制定的方案和时间表的开发和测试团队之间的沟通。因此,测试工程师将有大数据的应用程序的架构,这是测试粒度和基于风险的测试必不可少的充分理解。

最后,QA经理决定了大数据应用测试的相关采购模型。

2.准备内部大数据应用测试

如果您选择在企业内部大数据应用的测试,您的QA经理概括了大数据测试方法,创建了一个大数据应用测试策略和计划,需要努力的估计,安排测试工程师的培训和招募更多的人才质量保证。

注意 1:你需要的人才,以满足业务的一部分(在测试事件驱动的系统,非关系型数据库测试的经验,更多)和分析部分(经验,在大数据DWH,分析中间件和工作流测试)你的大的数据应用。所以,测试一个大的数据的应用程序,其包括所述操作和分析组件,2测试团队需要组装和管理。

注2:测试自动化由于庞大的数据量及其种类复杂的分布式架构而与大数据软件测试相关,这需要大量功能,数据质量检查,性能和回归测试。每个内部大数据测试团队应包括自动化测试,以设计测试自动化架构,选择和配置拟合测试自动化工具和框架。

测试类型和活动与大数据应用测试相关

功能测试

包括操作和分析部件的大数据应用需要对API级别进行彻底的功能测试。最初,每个大数据应用程序组件的功能应该以隔离验证。例如,如果您的大数据操作解决方案具有事件驱动的架构,则测试工程师将测试输入事件发送到解决方案的每个组件(例如,数据流工具,事件库,流处理框架等)验证其输出和行为免受要求。然后,端到端的功能测试应确保整个应用程序的完美功能。

集成测试

该测试类型验证了使用第三方软件,在多个大数据应用程序组件内和之间的整个大数据应用程序的无缝通信以及使用的不同技术的正确兼容性。它是关于您的应用程序独特的架构和技术堆栈进行的。例如,如果您的分析解决方案包括来自Hadoop系列的技术(如HDFS,YARN,MapReduce和其他适用的工具),则测试工程师检查它们与其元素之间的无缝通信(例如,HDFS NameNode和DataNode,Yarn ResourceManager和NodeManager)。

注意:使用事件驱动的应用程序,“活动”生产者和消费者是指互动的数据模式。因此,在验证大数据应用程序的操作部分内的集成时,测试工程师与数据工程师一起检查数据模式是否正确地进行了正确设计,最初是互相兼容的,并且在任何引入的更改后保持兼容。

为确保大数据应用的稳定性能,性能测试工程师应该:

  • 测量大数据应用的实际访问延迟,数据容量和处理能力,从不同的地理位置的响应时间(如网络吞吐量可以通过不同的区域改变)的最大大小。
  • 检查应用程序的处理压力负载和负载尖峰。
  • 验证应用程序的最佳资源消耗。
  • 跟踪应用程序的可伸缩性选项。
  • 运行测试验证负载下的核心大数据应用程序功能。

为确保大量高敏感数据的安全性,安全测试工程师应该:

  • 验证休息和运输途中的数据的加密标准。
  • 验证数据隔离和冗余参数。
  • 检测应用程序的架构问题破坏数据安全性。
  • 检查基于角色的访问控制规则的配置。

在更高级别的安全供应,网络安全专业人员执行应用程序和网络安全扫描和穿透测试。

数据仓库测试

测试工程师检查大数据仓库是否正确地验证了SQL查询,并在DWH列和行中验证业务规则和转换逻辑。

BI测试作为DWH测试的一部分,有助于确保在在线分析处理(OLAP)立方体中的数据完整性以及OLAP操作的平滑功能(例如,卷起,深向下,切片和切割,枢轴)。

非关系数据库测试

测试工程师检查数据库如何处理查询。此外,建议验证可以将应用程序性能的数据库配置参数和数据备份和恢复过程进行验证。

注意:您应该介意测试用例设计将取决于您的解决方案的细节,因为不同的NoSQL数据库使用不同的数据结构和查询语言。

大数据质量保证

凭借大数据应用,争取完整的数据一致性,准确性,审计性,有序,尤其是唯一性(为了容错而通过许多大数据应用程序的组件复制),这是毫无意义的。尽管如此,大数据测试和数据工程师应检查您的大数据是否足够好,这些潜在的问题水平是足够的质量:

  • 批量和流数据摄取。
  • ETL(提取,转换,负载)过程。
  • 分析和事务应用中的数据处理,以及分析中间件。

3.选择大数据应用测试供应商

如果您缺乏内部QA资源进行大数据应用测试,则可以转向外包。要选择可靠的供应商,您应该:

  • 考虑供应商在操作和分析大数据应用测试中的实践经验。
  • 审查供应商的案例研究,注意他们的大数据技术堆栈。
  • 考虑如果供应商有足够的测试资源,作为包括操作和分析部分的大数据应用可能需要两个测试团队的大小。
  • 考虑供应商的灵活性和可扩展性。在投标数据应用程序的SDLC期间,可能会因成本效益而改变测试团队的成员数量。
  • 短名单3-5供应商,具有相关的大数据测试经验和技术知识。

注意:如果一个入围的供应商缺乏一些相关的能力,您可以考虑多源。

  • 请求大数据应用测试演示和从入围供应商的成本估算。
  • 考虑供应商对大数据测试团队阵容的方法,计划的测试自动化参与,测试工具包。选择与您的大数据项目需求相对应的供应商。
  • 签署大数据测试协作合同和SLA。

在大数据应用测试期间,您的QA经理应定期对概述的KPI进行外包大数据测试进度,并减轻可能的沟通问题。

4.启动大数据应用测试

可以在设置测试环境和测试数据管理系统时启动大数据应用测试。

大数据应用的尺寸使其不可行的测试环境完全复制的应用程序。不过,随着测试环境不能完全复制的生产模式,确保它提供了高容量的分布式存储运行在不同的尺度和粒度水平测试。

测试经理应该设计一个强大的测试数据架构和管理系统,可以由所有团队的成员易于操作,将提供清晰的测试数据进行分类,快速可扩展性选项和灵活的测试数据结构。

大数据应用测试所需的人才

大数据应用测试TEMS阵容

测试一个大的数据的应用程序,其包括分析和操作部件通常需要两个相应的测试小组。下面我们介绍相关两支球队典型的测试项目中的角色。其具体能力将有所不同,取决于两个大数据应用的部件中使用的架构模式和技术。

QA经理(整个项目)

  • 确保大数据应用要求规范的可测试性,以及其架构和技术堆栈文档的完整性和可用性。
  • 借鉴大数据应用测试策略和计划。
  • 选择大数据测试管理工具。
  • 设计测试数据架构和测试数据管理系统。
  • 组装并帮助建立两个测试团队之间的合作。
  • 监督整体项目执行。

手动测试团队领先

  • 定义相应的大数据应用部分的手动测试范围。
  • 提高各个大数据应用部分的精确测试计划。
  • 管理测试工程师,解决了持续的问题,并将复杂问题升级为QA经理。
  • 措施和分析测试工程师的性能并引入相关的测试过程改进。

自动化测试团队领先

  • 为各个大数据应用部分设计测试自动化架构。
  • 选择适当的测试自动化框架和工具,或组织与正在测试的大数据系统相关的自定义测试自动化工具的开发。
  • 管理测试自动化工程师,促进和评估测试脚本的粒度和可维护性。

测试自动化工程师

  • 开发,运行和维护自动化UI和API大数据测试脚本。
  • 分析测试结果后报告缺陷。
  • 在任何引入的更改后,创建并维护可重复使用的回归测试套件以检查相关大数据应用程序部分的一致性。

测试工程师

  • 研究大数据应用的要求规范和架构,以获得更好的测试覆盖和粒度。
  • 设计,执行和维护测试用例,以验证大数据应用程序复杂的端到端用户方案。
  • 报告发现测试管理工具中的缺陷。

性能测试工程师

  • 设置,维护和操作大数据性能测试环境和工具。
  • 与大数据开发团队合作,概述可能会破坏应用程序性能的架构瓶颈。
  • 分析绩效问题,并提供关于减缓的建议。

安全测试工程师

  • 为大数据应用程序开发威胁模型,以主动概述潜在的安全问题,并帮助大数据应用程序的架构师和开发人员在应用程序设计期间地址。
  • 进行漏洞评估(手动评估和自动扫描)和大数据应用的渗透测试。
  • 在WASC,OWASP和CVSS分类方面排名检测到的漏洞,并提供有关问题的建议。

注意:实际的测试自动化工程师和测试工程师的实际数量将受应用程序组件的数量和工作流程复杂性。

大数据应用测试采购模型

QA管理和测试团队在内部

你完全控制大数据应用程序测试过程。但是,它可能是有问题的快速采集与测试相关的大数据应用程序的组件和技术经验的QA人才或缩放向上和向下的测试团队按照目前的工作量。

QA管理是内部,一个或两个测试团队都是外部的

您可以立即改变供应商大数据测试人才的数量,以保持测试预算依赖。有了这个,您需要一个高技能的QA经理,创建一个有效的大数据应用测试策略和计划,指导和改进大数据测试过程,评估测试工程师的性能,并联络开发和测试团队之间的沟通。

QA管理和测试团队外包

您可以优化测试时间和成本,由于供应商的大数据测试和自动化测试能力,经验丰富的QA管理和快速测试团队的可扩展性。然而,这种模式意味着增加了供应商的风险,因此要谨慎关于你的大数据应用的架构和技术领域的大数据应用测试供应商。

大数据应用测试成本

由于其特定的特性确定了测试范围,每个大数据应用的测试预算不同。

确定这一点的因素大数据应用测试范围:

  • 大数据源的数量和类型。
  • 大数据应用架构组件的数量和类型(例如,分析应用和中间件,流处理解决方案,机器学习系统等)。
  • 大数据应用技术堆栈。
  • 大数据应用程序的性能要求(包括可扩展性,可靠性,平均响应时间,每单位时间的事务数等)。
  • BI层功能的复杂性和数量以及用户角色的数量。

虽然拿出实际大数据的应用程序测试成本计算需要的这些因素的深入分析,一个非常近似的TCO用于测试与运营和分析份大数据应用将是常常大约300万美元 - $ 800K。

大数据应用测试的成本计算因素包括:

用于外包大数据测试

  • 大数据应用测试团队/团队的大小。
  • 测试团队成员的竞争力和经验的利率。
  • 基于以下方式的大数据应用测试时间:
    • 迭代次数(如果开发和测试并行)。
    • 测试用例/脚本总数。
    • 每个测试案例/脚本的开发和维护工作。
    • 测试自动化的百分比。
    • 回归测试覆盖范围。

用于内部的大数据测试

  • QA和测试专业人​​士的数量。
  • 大数据测试和QA专业人员完全装载薪水。
  • 如果需要,您的测试人才额外培训。

此外,无论是外包或内部大数据应用的测试,你应该在就业工具的成本因素(例如,测试框架执照,计算节点,虚拟机和存储,数据库和流媒体服务等)。

考虑专业的大数据测试服务

32. 软件测试服务和数据分析多年来,Sciencesoft的测试专业人​​员可以确保您的大数据应用程序能够准确分析和流畅的流媒体数据工作负载。

大数据应用测试咨询

SCIENCESTOFT的QA顾问:

  • 设计一般测试策略和计划,为整个大数据应用和经营和分析零件的测试策略。
  • 为您的分析和运营大数据应用程序部件创建测试自动化架构。
  • 基于ROI分析选择最佳大数据测试框架和工具。
  • 提供大数据测试努力的估计和成本故障。
  • 为大数据应用测试项目选择最佳采购模型。
  • 如果您的大数据应用测试项目已经在转到的情况下,请执行根本原因分析和大数据应用测试问题的缓解。

外包大数据应用测试

SCIENCESTOFT的测试专家:

  • 设计整个大数据测试过程:整体QA战略 和测试计划对于分析和操作部件的大数据应用和更精确的应用程序;测试自动化架构关于每个大数据应用部分的具体细节;最佳测试工具包满足应用程序的独特技术堆栈。
  • 设置并维护测试环境,生成和管理测试数据。
  • 开发,执行和维护测试用例和脚本,以确保每个大数据应用程序组件被最优地设计和配置,无缝地与其他人进行通信,并且所有的组件包括一个平滑地运转的应用程序。
  • 为大数据应用无风险进化开发可重新使用的自动回归测试套件。
关于Sciencesoft.

关于Sciencesoft.

Sciencesoft是一个全球IT咨询,软件开发和QA公司总部位于德克萨斯州麦金尼,德克萨斯州。我们提供QA外包对于大数据测试项目,帮助客户确保大数据应用的质量,安全性,提示可用性以及稳健性,同时平衡测试成本和时间。 ISO 9001和ISO 27001认证,我们依靠成熟的质量管理体系,保证与我们的合作不会对客户的数据安全构成任何风险。