作为该领域的先驱之一,Tabnine是一个代码完成助手,它使用生成式AI根据其周围的上下文预测和建议下一行代码。Tabnine现在正在开放测试版访问旨在生成单元测试的新功能。
单元测试在2014年被Rails开发人员David Heinemeier Hansson宣布死亡。可能正是在那一刻,开发人员社区开始分裂成两个阵营:一个为单元测试辩护的人,另一个坚持将集成测试作为确保软件系统正常运行的更好方法的人。
事实上,单元测试通常被认为是一项乏味且耗时的任务,因此被许多开发人员忽视,Tabnine说。这就是为什么他们通过在助手中添加单元测试生成来扩展他们的愿景基于人工智能的软件开发生命周期:
我们新的单元测试生成功能使用尖端的 AI 技术为您的代码自动生成单元测试,有助于确保您的代码经过严格测试,从而减少错误并提高代码稳定性——对于大型项目或期限紧迫的项目尤其重要。
该工具支持多种语言,包括Python,Java和JavaScript,并与Visual Studio Code和JetBrains IDE集成。根据Tabnine的说法,该工具不仅能够生成单元测试,而且还能够学习如何将它们与开发人员的编码风格和模式相匹配。
Tabnine 能够通过完成一行、完成整个函数或将自然语言注释转换为代码来提供三个不同级别的代码完成。它可以在云中或本地运行,以满足不同的隐私和合规性要求。必须注意的是,Tabnine 代码补全支持比单元测试生成更大的语言集,此外还包括 Rust、Go 和 Bash。
去年,已经推出了几项服务来生成代码建议,包括GitHub Copilot,AWS CodeWhisperer,OpenAI Codex等。Tabnine 是第一个同时提供单元测试生成的产品。
在相关的说明中,Tabnine还宣布它已达到每月1M +的用户。