Parasoft软件测试实践:什么是左移测试?

Parasoft软件测试实践关于什么左移测试以及实现方法介绍。

Parasoft最新资源免费下载试用


左移测试方法

shift-left”的运动是将关键测试实践转移到开发生命周期的早期阶段,其特别适用于敏捷、持续和DevOps计划。那么为什么需要进行早期的软件测试呢/p>

许多测试活动发生在周期的后期,需要更长时间才能找出问题所在并且需要花费更多的时间来修复。向左移动是指将缺陷的识别和预防转移到更早的阶段。如果没有进行左移测试,只等着在周期的后期执行测试实践,那能做的就只是修补而不是正确的修复它们。


代码什么时候会有Bug

在Capers Jones的一个着名的图表中很好地说明了左移测试策略,该图表显示了在软件开发的几个阶段,软件处理错误和缺陷的成本在增加。该图的第一部分显示绝大多数错误在编码阶段进入,这是符合预期的。

Parasoft软件测试实践:什么是左移测试?

无论是出现实际错误,还是误解了要求,或者没有考虑特定代码片段的影响,开发人员都会在代码生成时引入缺陷。


什么时候发现了这些Bug

我们在引入的图表发现缺陷的位置进行显示,发现基本上是第一条线的反转。

Parasoft软件测试实践:什么是左移测试?

这并不奇怪,因为通常在开始测试时会发现错误,如果没有适当的基础设施以及在一切准备就绪之前就开始测试可能会很困难。我们在这里看到的是,错误主要是在编码期间引入的,但在该阶段几乎从未找到过。


修复Bug的费用

由于大多数错误是在编码期间引入的,但直到后期才发现,因此了解在每个开发阶段修复缺陷所需的成本差异变得非常重要。如下图所示:

Parasoft软件测试实践:什么是左移测试?

我们看到一个令人讨厌的成本变化。修复潜入系统测试Bug的成本是在编码期间修复它的40倍,或者比在单元测试期间找到相同的bug要贵10倍。这种成本上升的原因有很多,包括:

  • 追踪问题所需的时间和精力。测试用例越复杂,就越难以弄清楚它的哪一部分是真正的麻烦制造者。
  • 在数据库或第三方API之类的系统依赖下,开发人员找到Bug的难度增加。
  • 修复Bug所产生的其他影响。比如这个Bug已经引入到其他框架或者任何地方。

早期测试和频繁测试

现在橙色线添加到下图中,它表明了在早期测试的建议下Bug检测周期已经左移:

Parasoft软件测试实践:什么是左移测试?

您可以看到橙色检测曲线代表的成本值在左侧变大,意味着我们的成本显着下降。

左移测试依赖于更成熟的开发实践环境,您只需要进行一定的手动/UI测试即可证明一切正常。这样,后期循环测试就是为了证明功能,而不是发现错误。


更远的左移测试

有些组织在进一步向左推进编码本身时会获得更多的价值。毕竟这是最开始引入错误的地方。通过查找更左边的缺陷,使缺陷修复更便宜:

Parasoft软件测试实践:什么是左移测试?

避免将负担转移给开发人员

更远的左移测试有一个危险,就是不小心给开发人员带来太多的测试负担。虽然随着时间的推移,缺陷修复的成本会大幅提高,但左侧的资源可能是软件生命周期中的最高成本。

所以正确的是将所有提到的这些提升到一个新的水平。我们不仅希望更早发现缺陷,而且希望减少实际放入应用程序的缺陷数量。

Parasoft软件测试实践:什么是左移测试?

左移测试的主要方法

一、应用开发测试最佳实践

执行早期阶段开发实践(例如静态代码分析和单元测试)有助于在流程早期识别和预防缺陷。重要的是减少错误的数量而不是找到错误。

二、利用服务虚拟化来实现持续测试

您必须接受在开发过程的所有阶段(包括后续阶段)创建的测试,并继续执行它们。单元测试可以很容易地连续执行,但由于外部系统依赖性,后续阶段功能测试的执行通常很困难,这是您可以利用服务虚拟化实现连续测试的地方。

 


总结

有效的质量保证流程可显着提高质量,同时节省时间和金钱。 当您通过利用现代软件测试技术向左移动时,您可以获得可靠和安全的软件。通过左移测试,您可以通过更早发现Bug来降低测试成本,同时还可以减少放入代码中的Bug数量。


想要购买Parasoft各产品正版授权,或者获取更多该产品相关信息的朋友可以点击” 咨询在线客服 “~
海量产品正在参加年终大促,价格优惠!详情请点击” 年终巅峰钜惠 “~

标签:性能测试测试优化软件测试技术软件测试

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2018年11月15日
下一篇 2018年11月15日

相关推荐

发表回复

登录后才能评论