Diffblue 如何使用 AI 自动化 Java 应用程序的单元测试

2023-09-18 0 1,127

Diffblue 如何使用 AI 自动化 Java 应用程序的单元测试

让我们做一些数学计算。 开发商对每个企业都至关重要,而且他们的费用并不便宜。 根据美国劳工统计局的数据,美国软件开发人员的年薪中位数接近 11 万美元。 在旧金山,这一价格接近 145,000 美元,其中入门级开发人员可以拿到 100,000 美元。 同时,开发人员工具的定价通常以开发团队的规模(席位)为代表。 另一方面,生产平台通常根据环境的大小收费。

看到机会了吗? 对开发人员效率的投资使聪明的公司能够利用该投资获得巨大的影响力。 小规模的开发人员可以部署大规模的系统。

不幸的是,在将代码推进 CI/CD 流程之前,普通开发人员要花费多达一半的时间来编写代码测试。 这是一项繁琐的手动任务,虽然对业务至关重要,但会消耗开发人员本来可以用于构建的时间。

但也许,只是也许,人工智能 (AI) 可以提供帮助。

让机器投入工作
Diffblue 是一家从牛津大学分拆出来的英国初创公司,它当然相信这一点。 周二,Diffblue 宣布全面推出其旗舰产品 Diffblue Cover 和 Diffblue Cover:社区版,这是为使用最流行的企业 Java IDE IntelliJ 的开发人员创建的免费版本。 使用 AI,Diffblue 以人类可读的形式自动编写覆盖率高达 80% 的 Java 单元测试,随着代码的发展自动维护测试,即使是在具有数百万行代码的应用程序上也是如此。

哦,它的速度比人类快 10 倍到 100 倍。 不错。

请参阅:防止开发人员倦怠的 10 种方法(免费 PDF)(TechRepublic)

具有讽刺意味的是,正如 Diffblue 首席执行官 Mathew Lodge 在接受采访时指出的那样,考虑到我们如何利用人工智能实现自动化和颠覆许多其他行业(从零售、旅游、 运输、制造等。

Lodge 表示,Diffblue 研究人员利用了为 AlphaGo 提供支持的机器学习策略,Alphabet 子公司 DeepMind 的软件程序击败了围棋世界冠军。 虽然该公司从 Java 解决方案(迄今为止全球 2000 强中最流行的语言,这些公司在生产力工具上投入巨资)开始,但其技术也可用于大多数编程语言(例如 Python、JavaScript 和 C#)的自动化测试 等。

最先推出 Diffblue 解决方案的客户之一是高盛(其年度 IT 预算高于许多国家的 GDP)。 在具有重要后端系统的一个模块上使用 Diffblue 的 AI,高盛能够在不到 24 小时内将现有单元测试覆盖率从 36% 扩大到 72%,如果手动完成这一壮举,则需要八天以上的开发时间 。 节省开发人员时间? 90%。

洛奇认为,系统变得如此复杂和庞大,以至于软件供应链的构建、交付和维护的大部分工作由机器来处理比由人类更好。 从这个角度来看,Tyler Jewell 也加入了他的行列,Tyler Jewell 是一位投资者,撰写了一些关于开发人员工具的最佳分析。 根据朱厄尔的说法:

由于工具和编程语言碎片化、API 蔓延、微服务以及大数据、分析、机器学习和反应式用户体验在项目中的分层,软件系统变得更加复杂。 随着复杂性的不断增加,持续交付缩短了反馈循环,同时为开发人员提供了针对每次更改的更深入的见解。 机器比人类更有能力根据持续反馈采取行动,并为极其复杂的系统提出更改建议。

正如 Jewell 继续说道的那样,“对数字服务的需求已经超过了构建这些服务的工程师的供应,这为能够提高开发人员生产力的供应商创造了机会。”

机器人交响曲
Diffblue 并不是唯一认为这是一个巨大市场机会的人。 在很大程度上受新兴 DevOps 趋势的推动,开发人员、运营和安全解决方案越来越多地转向预生产,并进一步转移到在编排之前构建模块的开发人员手中(例如,看看 Cyral 的安全性, Vercel 用于 JavaScript 和 React 前端框架,Diffblue 用于单元测试自动化)。

这一更大的转变与行业在数字化转型和云原生的新世界中采用容器(通常是云)相一致。 当然,在全球大流行期间,许多上市 SaaS 公司报告的惊人的季度收益和增长表明了该类别的获胜者未来的样子。 如今,SaaS/云公共市场 EV/未来 12 个月收入比率的中位数是令人难以置信的 15 倍。 2020年全球信息技术产业规模将达到5.2万亿美元,其中624B美元是软件。 开发人员在软件市场中所占的份额不断增加。

自主软件开发将成为未来计算的重要组成部分。 Diffblue 只是人工智能颠覆软件行业的开始。

申明:本文由第三方发布,内容仅代表作者观点,与本网站无关。对本文以及其中全部或者部分内容的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。本网发布或转载文章出于传递更多信息之目的,并不意味着赞同其观点或证实其描述,也不代表本网对其真实性负责。

七爪网 行业资讯 Diffblue 如何使用 AI 自动化 Java 应用程序的单元测试 https://www.7claw.com/61126.html

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务