logo Parasoft 行业资讯(一) 我也要发布文档

独自测试正在输掉这场变革



但是也许有一件事可以改变这一切......

IOVIO顾问Herminio Vazquez分享了他与ING Mortgages荷兰的合作方式,以通过使用服务虚拟化完全控制其测试环境来帮助现代化其财务应用程序。

看来,成功的软件开发团队的秘诀是能够按时、连续地胜任交付。有人会说,数字化转型与自然不同,这一过程中时间遵循着不同的节奏。相反,它就像没有停止的火车。如果错过了,那就结束吧。


这是怎么回事?


一遍又一遍,我们听到了这样的话:上市时间、更丰富的客户体验、更多功能、扩展功能以及和谐之旅。总之,进行更改。每个人都在变革中,确切地说,在变革快速中。对于组织及其团队而言,变更变得越来越重要。

变更变得无处不在,以至于IT环境可以与“运行和变更”团队一起运营。如果预算允许,可以成立一个实验小组,进行新的想法和创新。



变化无处不在


变化之所以重要,是因为通过变化,我们会打开新的机会,发现新的方法,并最终发展。但是,变化也带来不确定性和风险。风险业务本身就是一篇文章,但为了简单起见,有一个老朋友在处理变更和风险,测试时为我们提供帮助。

通过测试,我们可以验证我们的期望,确认我们的功能、客户旅程、史诗、故事或需求(取决于您的方法)是否适合目标且完整。

但是,某些事情正在将组织内部测试的价值从优势和声誉屏蔽转变为永无止境的活动,从而减慢了团队的工作速度。


我们所知道的测试的终结


众所周知,如果单独进行的测试无视结构良好且精心安排的环境管理,而后又需要外科手术和有条不紊地处理测试数据,那么单独进行测试是无用的。但是,大多数团队只专注于选择测试期间涵盖的方案的技巧。在作者看来,代码覆盖率仍然是测试团队中最著名的关键性能指标之一。

这导致领导团队选择不同的方法,使他们能够借助应对变化的解决方案阐明测试过程。现代工具集和方法将资源用于数据解决方案,以赶上数字化转型的步伐。

现在,市场已被机器学习就绪,人工智能驱动、机器人自动化支持等淹没,这可以说是通过收集和投影较小维度的数据来进行推理,使测试更加可靠而且耗时少。


受困于本地最低要求:您的环境


团队陷入局限性,难以应对并行的工作流,有限的环境和数据约束。如果这些句子与您对组织中的测试的感觉产生共鸣,请不要感到难过。你不是一个人。

如果您希望摆脱这种恶性循环,那么本文就是您的正确选择。复杂性理论、我们的祖父母、谚语和幸运饼干告诉我们,将复杂的问题分解成小块是克服这些问题的好策略,还记得吗?分而治之。

让我们从环境问题开始:典型的生产道路与开发-测试-接受-生产(DTAP)高速公路相关。老实说,在2020年部署软件并不是一件大事。实际上,您应该在容器浪潮中部署环境(也许已经)。

1:不要卡在Dev-Test-Acceptance-Production高速公路上。

不,真正的问题是系统或应用程序需要的外部环境和数据依赖性。信息解决方案依赖于内部或第三方的广泛服务目录,每个目录中都有大量协议和多种数据。

现实中的问题就在这里,如何使对数据和外部环境的硬依赖性脱钩?


欢迎:数据编排


如果您对这个术语不熟悉,我敢打赌,您会找到关于提取、转换、加载(ETL)或与云有关的主题的唯一参考。完全不在本文的讨论范围之内。

实际上,数据编排已经存在了很长时间。也许在不同名称和产品的保护下。

让我们从第一个,模拟和存根开始。您很可能已经听说过这些术语,因为它们指的是建立接口的早期过程,这些接口由于外部依赖性而允许业务流程的继续。这些依赖关系是双重的:逻辑(环境/应用程序)和它们传递给系统的数据。

开发模拟对于单元测试很有用。它在非常低的级别上验证数据合同和协议。但是,您不能仅在数据测试中使用模拟来控制测试环境。您需要更复杂的技术。

企业系统建立在具有多种能力,地域和技术的小型系统之上。您可能在混合世界中。

您组织中的两个主要利益相关者对提供者有争论。安全的选择是不要将所有鸡蛋都放在一个篮子里。

无论如何,客户关系管理系统都链接到工作流管理系统、财务系统和审计系统等等。这一切都取决于您的业务范围。

在所有这些系统之间协调数据需要技巧和流程。它还需要正确的工具。

在测试环境中创建,传输和保存数据是我所谓的数据编排,这是我以前认识到产生有价值的测试结果的唯一方法。

我的合伙人是一名生物工程师。(不)幸运的是,她不处理代码行或软件字节。她处理细胞。在某些条件下生活或死亡的那些东西。我能想到的唯一类似的东西是我们世界上的腐烂的概念。无论如何...

她的实验和测试方案经过精心设计,可以保留环境条件。数据收集始终来自控制、验证和测试样本。软件开发还不像生命科学那样成熟,但是您认为将我们的实践推广到那些不可能失败的实践中,这难道不是吗?

好吧,撇开横幅广告,我们如何才能以更快的速度实现有效情景的再现,从而破坏变化的熵?做好准备。你会喜欢这样的。


三连胜


如果环境、数据和测试逻辑是完美的组合,那么为什么没有解决方案可以很好地发挥它们的作用。好吧,有。这就是所谓的服务虚拟化。虚拟化一词通常与虚拟设备的配置相关联,这没有帮助,因为虚拟设备属于硬件和扩展问题,而不是测试或变更问题。更不用说to-MAY-toes/to-MAH-toes的陷阱。

服务虚拟化是一种企业级解决方案,可减少对复杂企业系统中数据和环境的依赖。

企业级标签可能听起来不必要。我之所以这样做,并不是因为我想听起来更深刻(帖子通常会无条件地大规模或最佳实践地使用这些术语),而是因为如果您:


  • 在多个人接触同一代码库的环境中工作;
  • 共享和控制测试资产的版本,以及;
  • 希望将您的解决方案集成到您现有的技术堆栈中。


然后,不仅涉及通信范例:request:response,publish:subscribe等。它与采用、学习曲线、培训材料、支持、示例、路线图和成本有关。

不用说,IT中的技术采用现在就像银行抢劫计划:它必须带有明确的进入和退出策略。上车之前,您需要知道如何下车。

在整个企业环境中促进数据编排并不复杂。只是很复杂。这意味着它不是火箭科学,而是一系列可以解决且众所周知的明确任务。

这是关于版本控制和控制对数据集的访问。

它与分配和访问控制、角色、映射有关,最重要的是与适应变化有关,而不是试图阻止它。

服务虚拟化是关于理解使用较小版本的外部服务以及它们自己较小的数据集替换外部服务是稳定测试套件的唯一要求,并隔离变更。


使用集装箱整合荷兰抵押贷款的解决方案


因此,测试可以对抗快速变化。而且,这不是测试用例的矢量化,也不是那些伟大研究产生的旧式正交技术,这些特征贪婪的涉众不太可能理解。

如果您将data关键字而不是那些老式的术语混在一起,那么与以往相比,利益相关者就数据合并和控制的价值以及数据资产资本化的抗辩可能性就较小。

IOVIO与Parasoft一起在抵押贷款部落中为ING带来了这些概念。他们合并了一个将服务容器化的解决方案,并使60%的复杂抵押贷款生态系统处于可测试状态-完全独立于数据依赖项和环境而完全受控。

有关IOVIO和Parasoft如何帮助ING应对变化的软件开发测试挑战的详细信息即将推出。同时,请查看Parasoft录制的有关为金融服务实施服务虚拟化的网络研讨会。如果您想了解更多信息或想联系我们,请使用下面的联系方式。