如何利用Parasoft Jtest提高Java测试ROI

喜你入骨 提交于 2019-11-27 16:50:57

Parasoft Jtest是一款能够无缝集成Parasoft SOAtestJava自动化测试工具。为了帮助团队更加可靠地实现质量和安全性,企业可以利用Parasoft Jtest进行Java测试。本文旨在介绍如何利用Jtest提高Java测试ROI,加速软件交付并同时提高软件质量。


背景介绍

在当今的数字经济中,企业必须更快地向市场提供软件,以跟上消费者的需求。为了在不牺牲质量和安全性的情况下实现这一目标,组织必须能够彻底、快速地、有效地测试软件代码更改。但是实现这种彻底的测试可能会成为瓶颈,给软件团队带来压力和风险,延迟交付,并对业务产生直接影响。

软件项目延迟的最大因素之一是在开发过程的后期发现错误,为了帮助解决这个问题,开发团队利用单元测试静态代码分析来处理周期中的缺陷,然而这些做法伴随着时间和成本扩大,可能导致延迟实现交付。

为了解决交付延迟并帮助团队更加可靠地实现质量和安全性,企业可以利用Parasoft Jtest提高Java开发测试的效率。无论是进行新代码开发还是维护遗留应用程序,Parasoft Jtest都可以很好的生成扩充克隆改变单元测试,同时还可以优化这些测试的执行,从而大大改善与单元测试相关的时间和成本

此外,Parasoft Jtest可以扫描源文件,以提高开发过程中的应用程序安全性和质量。总的来说,这将有助于在软件开发过程的早期捕获缺陷来加速交付并提高软件质量

增加单元测试ROI:单元测试创​​建

为了说明如何在单元测试创​​建阶段提高ROI,我们假设一家主要的金融机构正在实施云迁移策略,并开发新的Java应用程序。开发团队由20名开发人员组成,平均每个开发人员花费10万美元,因此每年的总开发成本为200万美元。

新的应用程序将每季度发布一次,因此每个版本的开发成本为50万美元。根据研究,普通开发团队花了30%的时间手动编写单元测试,这表明对于给定的版本,编写单元测试需要花费大约15万美元。

季度比例*年开发成本*单元测试时间比=单元测试编写成本

而使用Parasoft Jtest,用户可以在一半的时间内完成写入单元测试。除了消除与单元测试相关的许多耗时的手动任务之外,Jtest还通过使用AI在编写代码时自动生成单元测试来增加代码覆盖率。这使得编写单元测试的成本从15万美元降至7.5万美元,每次发布可节省7.5万美元,每年可节省30万美元。

值得注意的是在这个例子中,用于手动编写单元测试的时间占30%是保守估计,通常这个数字要高得多,根据组织的单元测试实践高达50%。使用Parasoft Jtest,这些组织将节省更多时间和成本。

增加单元测试ROI:单元测试执行

当一个组织不断构建新的应用程序时,将会生成越来越多的单元测试,并且从单独运行的隔离单元测试集成级单元测试运行时间要长得多。当完整单元测试执行时间增长到2小时,整体开发构建时间将会受到影响,因为软件开发团队需要等待2小时才能获得更改反馈。

为了加强发布周期,团队可以使用Parasoft Jtest优化单元测试执行。Jtest减少了使用支持AI的测试自动化执行单元测试所需的时间,执行优化基于已更改的代码的单元测试集,而不是运行全套测试。

通过优化运行哪些测试,可以大大缩短总体构建时间,并为软件团队提供更快的反馈。组织每天可以获得更多的构建,从而优化了团队在当天活动期间的工作效率,缩短了交付时间。

增加静态代码分析ROI:自动扫描

假设继续在这个场景中使用相同的组织,发现了几个晚期周期缺陷。根据卡内基梅隆大学软件工程研究所的缺陷成本度量标准,晚期发现缺陷的修复成本是早期的7倍以上。

开发人员小时成本*查找和修复晚期缺陷的小时数*晚期周期缺陷数=总修复成本

查找和修复晚期缺陷的小时数*周期性缺陷数/工作日小时数=总缺陷修复时间

为了减少后期出现的缺陷数量,Parasoft Jtest使团队能够进行自动静态代码分析安全测试,提供了1000多条规则,用于在开发时(早期循环)识别代码中的潜在漏洞和问题

为了进一步改变问题的识别,Jtest使用户能够在IDE中进行即时或连续分析,并且同时进行开发。进一步减少了与缺陷修复相关的时间和成本,并提高了质量。

结论

Parasoft Jtest是提供高质量服务的关键推动因素。通过更好的单元测试自动静态代码分析,开发人员能够更好地减少后期周期缺陷,使他们能够将更多时间集中在业务的新功能开发上。

这些开发人员也可以从即时反馈中受益,能够快速识别他们的代码更改是否会破坏应用程序中的功能并快速解决它。总的来说Parasoft Jtest使开发团队能够在不牺牲质量的情况下实现敏捷和快速交付,从而使业务取得成功。


 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!