彩票走势图

通过数据仿真使测试数据管理(TDM)更容易

原创|行业资讯|编辑:郑恭琳|2020-06-12 14:56:19.903|阅读 293 次

概述:为了启用并行集成测试以转移向左的功能测试,组织可以利用Parasoft的新方法来测试数据管理,该方法使用AI、机器学习和数据模拟来替代对物理端点和数据库的需求。它是如何工作的?在下面阅读更多内容。

# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>

相关链接:


为了启用并行集成测试以转移向左的功能测试,组织可以利用Parasoft的新方法来测试数据管理,该方法使用AI、机器学习和数据模拟来替代对物理端点和数据库的需求。它是如何工作的?在下面阅读更多内容。


测试数据问题


验证和验证软件仍然是企业软件开发中最耗时、最昂贵的方面之一。业界已经接受了艰苦的测试,但是根本原因常常被忽略了。获取、存储、维护和使用测试数据进行测试是一项艰巨的任务,需要花费大量时间。

我们从行业数据中看到,多达60%的应用程序开发和测试时间可用于与数据相关的任务,其中很大一部分是测试数据管理。延误和预算支出只是问题的一部分-缺少测试数据也会导致测试不足,这是一个更大的问题,不可避免地导致缺陷蔓延到生产中。

TDM市场上的传统解决方案并未成功改善测试数据挑战的状态——让我们来看看其中的一些问题。


测试数据管理的3种传统方法


传统方法要么依靠制作生产数据库的副本,要么完全相反,即使用合成的生成数据。有3种主要的传统方法:

1.克隆生产数据库

测试人员可以克隆生产数据库以进行测试。由于这是生产数据库的副本,因此还需要复制所需的基础结构。安全和隐私合规性要求严格保护任何机密个人信息,因此经常使用掩蔽来掩盖此数据。

2.克隆生产数据库的子集

生产数据库的子集是生产数据库的部分克隆,其中仅包括测试所需的部分。这种方法需要较少的硬件,但仍然像以前的方法一样,也需要数据屏蔽和生产数据库的类似基础结构。

3.生成/合成数据

通过综合数据,不依赖客户数据,但是生成的数据仍然足够实际,可用于测试。综合遗留生产数据库的复杂性是一项艰巨的任务,但是它消除了克隆机制所带来的安全性和隐私性挑战。


传统TDM方法的问题


首先,让我们考虑一种最简单(也是最奇怪,且最常见的)的企业TDM方法,即克隆带有或不带有子集的生产数据库。为什么这种方法有问题?


  • 基础架构的复杂性和成本。传统数据库可能是传统TDM方法最大的失败,它可能驻留在大型机上或由多个物理数据库组成。仅为团队复制一个生产系统是一项昂贵的工作。
  • 数据隐私和安全性。使用生产数据库时,隐私和安全性始终是一个问题,并且测试环境通常不符合必要的隐私和安全性控制。屏蔽是解决这些问题的常用解决方案,它会更改敏感信息以不透露任何个人身份信息,但是不幸的是,屏蔽几乎是不可能的,而且不会泄漏私人信息,因为尽管测试数据可能被匿名化,最好的测试团队的最大努力。例如,需要遵守GDPR的公司可能很难说服监管机构他们克隆的测试环境符合必需的隐私控制。
  • 缺乏并行性和数据冲突。在给定基础架构成本的情况下,可用的测试数据库数量有限,并且并行运行多个测试会引起对数据冲突的担忧。例如,测试可能会删除或更改其他测试所依赖的记录。缺乏并行性意味着测试效率降低,测试人员必须在每次测试会话后担心数据完整性。
  • 子集并没有多大帮助。尽管可以创建需要较少基础架构的可管理子集,但这是一个复杂的过程。必须维护引用完整性,并且子集中还存在隐私和安全问题。
  • 合成数据可以解决隐私问题,但需要大量的数据库和领域专业知识。创建并填充测试数据库的实际版本需要对现有数据库有深入的了解,并具有使用适合测试的数据重新创建合成版本的能力。因此,尽管此方法解决了许多安全性和隐私问题,但它需要更多的开发时间来创建数据库。如果测试数据库很大,则基础结构问题仍然存在,并且并行性可能受到限制,具体取决于可以同时使用多少个测试数据库。



用数据模拟解决测试数据管理问题


我们刚刚在ParasoftSOAtestVirtualize产品系列中开始提供的一种简化、更安全的测试数据管理方法更加安全,并解决了这些传统问题。那么它与传统方法有何不同?

关键区别在于,它通过在测试和正常应用程序使用期间捕获来自API调用和JDBC/SQL事务的流量来收集测试数据。根据需要对捕获的数据进行屏蔽,并在Parasoft的测试数据管理界面中生成并显示数据模型。可以在界面中推断和配置模型的元数据和数据约束,并且可以执行其他屏蔽、生成和子设置操作。这提供了一个自助服务门户,可以在其中轻松配置多个一次性数据集,以为测试人员提供充分的灵活性并控制他们的测试数据,如下面的屏幕快照所示:

服务虚拟化增强了Parasoft的测试数据管理技术,可以在其中模拟受限的后端依存关系,从而解除测试活动的阻塞。一个很好的例子是通过将其替换为模拟JDBC/SQL事务的虚拟化数据库来替换对共享物理数据库的依赖,从而允许进行并行和独立的测试,否则会产生冲突。Parasoft的测试数据管理引擎通过允许测试人员生成、子集、屏蔽和创建满足其需求的个性化测试数据,扩展了服务虚拟化的功能。

通过替换共享的依赖关系(例如数据库),服务虚拟化消除了托管数据库环境所需的基础架构和复杂性。反过来,这意味着隔离的测试套件以及涵盖极端情况和极端情况的能力。尽管虚拟化的依赖性不是“真实的东西”,但是可以在虚拟资产中对状态操作(例如对数据库的插入和更新操作)进行建模。请在下面在概念上查看此内容:

这种方法的主要优势在于,它避免了克隆数据库的复杂性和基础架构成本,与其他测试数据方法相比,可以更早地进行API级测试(即集成测试)。

这种方法的其他一些好处包括:


  • 由于它不需要基础数据库基础结构,因此通常可以在开发人员和测试人员的工作站上本地运行。
  • 每个测试人员独有的隔离测试环境意味着共享测试数据库不会发生数据冲突或数据完整性问题。测试变得高度并行,从而消除了传统方法的等待时间和浪费的周期。
  • 测试人员可以在测试数据库上轻松涵盖可能导致损坏和其他问题的极端情况。由于每个测试环境都是隔离的,因此测试人员可以轻松执行破坏性,性能和安全性测试,而无需担心共享资源的完整性。
  • 在团队之间共享测试和数据很容易,从而避免了重复的工作,并且可以针对其他目的(例如安全性和性能测试)定制API测试。
  • 使用虚拟服务器消除了基础数据库架构的复杂性。状态测试可用于提供实际方案。
  • 通过仅使用动态屏蔽捕获所需的数据,您不再需要克隆的数据库,将集成测试的重点放在API上,而不是维护共享的克隆数据库。


仍然需要对物理数据库进行测试,但是只有在整个系统可用时,才需要在软件交付过程结束时进行测试。这种测试数据的方法并不能完全消除对真实数据库进行测试的需要,但是可以减少软件开发过程早期阶段对数据库的依赖,以加速功能测试。


总结


用于测试企业软件的数据管理的传统方法依赖于克隆生产数据库及其基础架构,这些数据库充满了成本、隐私和安全问题。这些方法不可扩展,并且会浪费测试资源。Parasoft的新解决方案将重点放在测试和测试数据的按需重新配置上,从而允许进行并行集成测试,从而转移了测试的关键阶段。



标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@pclwef.cn


为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP