Coverity 7.0: 支持 C#、Java、C、C++ 算法、SonarQube、Eclipse、VS 和 Clang 编译器

  • Anand Narayanaswamy
  • 王灵军

2014 年 2 月 23 日

话题:JavaC#C++语言 & 开发

Coverity已经发行了开发测试平台 7.0,它带有 21 个新增或增强的 C# 分析算法,这些算法除了可以修复资源泄露、并发问题和 null 引用之外,还可以提高 C# 代码库中的缺陷检测的准确性。

这个最新的发行版本新涵盖了开放性 Web 应用安全项目(OWASP),并增强了 Java 应用中的安全漏洞跟踪功能,这些增强的功能中包含有 17 个用于 Java 和 C++ 代码库的分析算法,你可以凭借它们来找出与崩溃、计算不准确或无法预料的行为相关联的问题。

Coverity 7 可以和SonarQube集成,这样开发者就能在除了连接和策略管理器中的新安全性审计和兼容性视图之外的单个工作流中查看和管理 Java 应用中的广泛的缺陷。

最新的发行版本除了支持对运行于 Android 和 WindRiver 平台的设备上的进行单元测试分析,还可以与Eclipse和 Visual Studio 集成。而且,它也支持 Clang 编译器,该编译器广泛用于Objective-C和 C/C++ 应用的开发工作中。

InfoQ 和 Coverity 的产品营销高级总监 Kristin Brennan 进行了一次对话,从而更多地了解了该最新发行版本的情况。

InfoQCoverity是怎样区别于Visual Studio 2013所提供的测试工具的?

因为二者专注于不同的事物,所以 Coverity 平台是对 Visual Studio 2013 所提供的测试工具(以前称为FxCop)的补充。回到.Net 框架的早期阶段,一系列编写好的指南帮助开发者在某个特定库的所有提供物范围中获得一致的、标准化的格式,比如,怎样命名一个特定类的所有成员;怎样命名命名空间;不同的类之间的关系应该看起来是怎样的。Visual Studio 工具找出违反了这些规则的地方并提交给你,请你关注。随着 Visual Studio 工具的演进,它也开始通过分析字节码来寻找代码中所存在的其它问题。然而,通过字节码分析所发现的问题往往只是可能存在的缺陷冰山的露出水面的一角。

相较而言,Coverity 平台对一部分较小的特性集做了更进一步的分析。Visual Studio 工具对字节码进行分析,它的设计目的是保证代码一致性,而 Coverity 的解决方案则对源码进行分析,它是设计是用于查找严重的、高危害性的 bugs——比如 null 引用、资源泄露和线程问题。

InfoQ:你能否和我们一起分享一下 Coverity的宗旨?

Coverity 的使命就是帮助创建软件开发组织更好更快地创建和交付软件。Coverity 开发和测试平台提供了静态分析解决方案,开发者借助它可以快速而高效地测试自己的代码,并在编写代码的同时就解决严重的质量和安全性问题。开发组织能向顾客更快地交付高质量的、安全的软件产品,而这又反过来使得其软件开发更具有竞争优势。

InfoQ: Coverity为开发者带来了哪些好处?

开发者能使用 Coverity 平台测试自己的代码,并在编码的过程中就解决高危害性的质量和安全问题,从而能更快地创建更好的软件产品。

InfoQ:Coverity可以测试哪些种类的 apps

使用 Coverity 平台可以测试基于 C/C++、Java、C# 的任何类型的应用。

InfoQ:Coverity是否支持 iOS、Android和 Windows Phone 8

Coverity 平台支持 iOS 的 C/C++ 代码,同时也支持 Android 和 Windows 移动设备。

查看英文原文:Coverity 7.0 with C#, Java, C, C++ Algorithms, SonarQube, Eclipse, VS and Clang Compiler Support


感谢邵思华对本文的审校。

给 InfoQ 中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ)或者腾讯微博(@InfoQ)关注我们,并与我们的编辑和其他读者朋友交流。

JavaC#C++语言 & 开发