一些你不知道的事,findbugs的配置和使用

作为一个程序员,你不得不知道一些提高代码开发性能和开发效率的工具或者插件的使用,再说现在好多的公司都讲究快速开发,如果周期时间短那么你的程序的bug通过一些工具来搞,岂不是方便很多吗,但是插件毕竟还是有很大的局限性,比如findbugs就只能找出java文件里面的bug,下一篇我们来学习pmd的代码优化。。现在虽然android studio在很多公司已经使用开发了可能几年后代替eclipse进行安卓开发也未可知,但是还是出了问题就很操蛋,毕竟还没有eclipse的成熟嘛,不过个人觉得eclipse用的习惯点,然后插件的使用也是大同小异,这里呢还是以eclipse为例

一、findbugs简介

FindBugs出到目前的版本,功能已经相当强大,不过也有待完善的地方。从实际使用来看,有一些隐藏的bug并不能靠FindBugs直接发现。那么,可不可以撰写一个新的Detector,来发现这种将一个未初始化的reference传来传去而形成的潜在的bug呢?理论上来讲,应该是可以的。这个Detector目前还未实现。哪位如果有兴趣的话,可以参考FindBugs, Part 2: Writing cust detectors(扩展阅读)这篇文章,帮忙实现这个Detector。实现一个新的Detector,便可以检测出一种新型的bug,这样不知又可以帮开发人员省去多少人工检查的时间,功德无量啊。 FindBugs也不能发现非java的Bug。对于非java撰写的代码,如javascript,SQL等等,要找出其中可能的bug,FindBugs是无能为力的。当然,javascript中的bug似乎还不至于使系统崩溃,而SQL中的bug往往又跟业务逻辑相关,只要测试仔细一些应该是可以发现的。 FindBugs不过是一个工具。作为开发人员,当然首先要在编程的时候努力避免引入bug,而不要依赖于某个工具来为自己把关。不过由于代码的复杂性,一些隐藏的bug确实很难靠咱们的肉眼发现。这时,应用一些好的工具或许就可以帮你发现这样的bug。这便是FingBug存在的价值。

二、findbugs 的安装配置

直接eclipse里面安装插件(更新的site),turn on Eclipse, click on Help -> Software Update -> Find and Install…接着勾选next,acept步奏不再叙述。

的plugins目录,然后重启eclipse即可。

最后restart Eclipse,选中项目,右键会出现一个Find Bugs菜单。至此,findbugs插件安装完毕,你可以放心的使用了。。

FindBugs的设置:安装好之后,可以通过 Projects > Property > FindBugs标签对其进行设置。设置方法可以根据自己的需要进行调整。另外在 问题(Proplems)列表窗口(Windows > 视图 > 问题)的Filter设置里,把FindBugs的有关选项都check上。FindBugs地执行:选中 所在项目,鼠标右键 > Find Bugs > Find Bugs执行,哈哈,一切搞定了吧,然后就是我们的使用了。

三、Findbugs是一个静态分析工具那么什么是静态分析工具呢?

静态代码分析是指无需运行被测代码,仅通过分析或检查源程序的语法、结构、过程、接口等来检查程序的正确性,找出代码隐藏的错误和缺陷,如参数不匹配,有歧义的嵌套语句,错误的递归,非法计算,可能出现的空指针引用等等。

在软件开发过程中,静态代码分析往往先于动态测试之前进行,同时也可以作为制定动态测试用例的参考。统计证明,在整个软件开发生命周期中,30% 至 70% 的代码逻辑设计和编码缺陷是可以通过静态代码分析来发现和修复的。

但是,由于静态代码分析往往要求大量的时间消耗和相关知识的积累,因此对于软件开发团队来说,使用静态代码分析工具自动化执行代码检查和分析,能够极大地提高软件可靠性并节省软件开发和测试成本。

静态代码分析是指无需运行被测代码,仅通过分析或检查源程序的语法、结构、过程、接口等来检查程序的正确性,找出代码隐藏的错误和缺陷,如参数不匹配,有歧义的嵌套语句,错误的递归,,非法计算,可能出现的空指针引用等等。

在软件开发过程中,静态代码分析往往先于动态测试之前进行,同时也可以作为制定动态测试用例的参考。统计证明,在整个软件开发生命周期中,30% 至 70% 的代码逻辑设计和编码缺陷是可以通过静态代码分析来发现和修复的。

但是,由于静态代码分析往往要求大量的时间消耗和相关知识的积累,因此对于软件开发团队来说,使用静态代码分析工具自动化执行代码检查和分析,能够极大地提高软件可靠性并节省软件开发和测试成本。

静态代码分析工具的优势

1. 帮助程序开发人员自动执行静态代码分析,快速定位代码隐藏错误和缺陷。

2. 帮助代码设计人员更专注于分析和解决代码设计缺陷。

3. 显著减少在代码逐行检查上花费的时间,提高软件可靠性并节省软件开发和测试成本。

Java 静态代码分析理论基础和主要技术四、findbugs 的使用

我们还是来看下百度百科里面的原理介绍:它检查类或者JAR 文件,将字节码与一组缺陷模式进行对比以发现可能的问题。

Findbugs自带检测器,其中有60余种Bad practice,80余种Correctness,1种 Internationalization,12种Malicious code vulnerability,27种Multithreaded correctness,23种Performance,43种Dodgy。(其实不太了解),然后介绍这些东西的博客也是非常的多,天朝的程序员也是相当的不容易,反正本着会用就好,原理也是百度上看的,不只做伸手党就好。然后直接操作了

旅行,不要害怕错过什么,

一些你不知道的事,findbugs的配置和使用

相关文章:

你感兴趣的文章:

标签云: