IDE AI 自动补全插件 TabNine 增加单元测试功能
导读:TabNine 是一个自动补全的编码插件,不同于一般的自动补全插件,它使用了深度学习 来帮助我们补全代码。并且开箱即用,不需要额外配置。
作为该领域的先驱之一,Tabnine (https://www.tabnine.com/)是一个代码完成助手,它使用生成式 AI 技术,它根据周围环境预测,为使用它的用户建议下一行代码该怎么写。
Tabnine 如今开放了目标在生成单元测试的新功能。
2014 年,Rails 开发人员 David Heinemeier Hansson宣布单元测试已死。就在那一刻开始,开发者社区开始分成两个阵营:那些为单元测试辩护的人与那些坚持将集成测试作为更好方法的人。
事实上,单元测试通常被认为是一项乏味且耗时的任务,也因此被许多开发人员忽视。
这就是为什么TabNine想通过代码助手并添加单元测试生成,来扩展基于 AI 的软件开发生命周期的愿景:
我们新的单元测试生成功能使用尖端的 AI 技术自动为您的代码生成单元测试,有助于确保您的代码经过严格测试,从而减少错误并提高代码稳定性。 这对于大型项目或期限紧迫的项目尤其重要。
根据 Tabnine 的说法,该工具不仅能够生成单元测试,它们还能够学习如何与开发人员的编码风格相互匹配。
Tabnine 的方法还能有效地学习代码中的模式。Tabnine 官方描述:“我们的模型使客户能够灵活地在我们的云或客户的网络上运行 Tabnine,并能够训练自定义 AI 模型,能够捕获其存储库中的特定模式。”
此外,Tabnine 可以通过完成一行、完成整个功能或将自然语言注释转换为代码的三个不同级别的代码的自动完成。它可以在云端或本地运行,以满足不同的隐私和合规性要求。
值得留意的是,Tabnine 代码完成支持比单元测试生成更大的语言集合,包括 Rust、Go 和 Bash等语言。
2022年业界推出了多款服务和工具来生成代码编写建议,包括GitHub Copilot、AWS CodeWhisperer、OpenAI Codex等。
而Tabnine 是第一个同时提供单元测试生成功能的AI工具。此外,Tabnine 还宣布其每月用户已超过 100 万以上。
关于Tabnine
2020年,一位名叫Jacob Jackson的加拿大人,在滑铁卢大学主修计算机科学与组合优化专业,辅修数学。他在教室中开发了”Deep TabNine“代码补全工具,实现了自动填充代码等智能特性。
Jackson之前在Reddit上发帖称,这是自己在大学阶段开发的第一款商业软件产品。
后来人们了解到他曾在2014和2015连续两年获得IOI金牌。大学一入学,便成为加拿大Michael and Ophelia Lazaridis Olympiad Scholarship奖学金的获得者,免除了8个学期学费书费和生活费。
除了自动补全代码的TabNine,Jackson还开发了很多有意思的应用,比如一个名为jellies的益智游戏,和使用蒙特卡罗树搜索的国际象棋引擎Sashimi等。
现在Tabnine工具已经支持到23种编程语言,包括它支持 Java、C++、PHP、Go、C#、Python、Ruby、JavaScript、Rust、Swift、TypeScript、Haskell、OCaml、Scala、Kotlin、Perl、SQL、CSS、HTML 和 Bash。
还有如 Visual Studio Code 和 JetBrains IDE 等5种IDE编辑器完美集成,在使用上也很简单,效果明显。不少使用过的开发者说:TabNine是他们用过的最好的代码补全工具,这是属于程序员的杀手级应用。
在2022年6月,tabnine获得了Qualcomm Ventures、OurCrowd 和 Samsung NEXT Ventures 与 Kholsa Ventures等共同领投的 2200万美元的天使轮融资。
作者:高朋
相关阅读: