【问题标题】:Which is the best tool for finding bugs in the Java code? [closed]哪个是在 Java 代码中查找错误的最佳工具? [关闭]
【发布时间】:2011-11-11 09:15:46
【问题描述】:

我想知道哪种工具最适合在我的代码中查找任何类型的错误。我知道这可能是一些理论上或永无止境的问题,所以我想根据错误报告的效率(包括命名约定)对其进行修改。所以你可以说哪些工具报告和最大的错误,如果在行业中有效使用?听说 findbug 真的好吗?

【问题讨论】:

  • 使用位于耳朵之间的那个,那个是最有效的,是任何机床都无法替代的 ;-)
  • @Peter 不错的评论...但有时它似乎并不实用,特别是当您只是初学者时...这些工具将帮助您增加名为 Brain 的工具数据库,以后可以使用.... findbug 大大改善了我的编码实践。
  • 确实如此。但是除非你真正了解为什么会发出特定的 FindBugs 警告以及如何避免它们,即如何编写更好的代码(为此你必须动脑筋),否则你不会成为更好的开发人员,不管你使用多少代码分析工具。
  • @peter 我同意那个彼得并尊重你的评论

标签: java bug-reporting


【解决方案1】:

FindBugs 可能是最著名的之一,值得一试。

对于命名约定等,我建议您查看CheckStyle

【讨论】:

  • 是的,我使用了查找错误,但我们没有任何样式错误。通过检查样式让我也尝试一下。
【解决方案2】:

Findbugs 相当不错。但是,我建议使用声纳来保持代码质量。 http://www.sonarsource.org/ 它与 Maven(声纳:声纳)很好地集成。除此之外,我相信使用 maven 站点创建 checkstyle、pmd、findbugs 等报告也有助于让开发人员保持警觉。

【讨论】:

    【解决方案3】:

    这取决于你在寻找什么。就个人而言,我使用FindBugsPMD 的组合来执行Java 代码的静态分析。但是,我最近发现了一个Eclipse plugin called CodePro Analytix by Google

    Java 代码分析有两种类型——源代码分析和字节码分析。 PMD 查看源代码以查找可能的错误、未使用的代码、次优代​​码、复杂的表达式和重复的代码。 FindBugs 查看生成的字节码以查找可能的错误。在分析应用程序时,两者都是必不可少的。

    但是,在查找缺陷方面,没有什么比一个好的测试框架和(如果需要)一个模拟库更好的了。我在JUnitMockito 上取得了很好的成功。这将使您能够为您的模块编写单元测试。使用自动化工具或测试程序编写代码系统、集成和冒烟测试也很重要,这样您就可以涵盖核心功能并快速查看何时出现问题。

    【讨论】:

      【解决方案4】:

      我更喜欢在 IntelliJ 中使用代码分析。它不仅可以发现许多可能的错误和改进,还可以快速修复很多问题,这使得修复大量代码变得切实可行。

      【讨论】:

      • 它是否也显示标准命名约定?
      • 标准命名转换以及快速修复。即,如果 public static final 采用驼峰式格式,它会突出显示(或出现在报告中)并让您选择将其重命名为 UPPER_CASE 更改所有引用(即使在 cmets、字符串和文件中)
      【解决方案5】:

      使用编译器查找语法“错误”

      使用测试用例找出可用性“错误”

      在代码中使用测试工具来发现代码修改的回归问题。

      【讨论】:

        猜你喜欢
        • 2013-08-16
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-09-26
        • 1970-01-01
        • 1970-01-01
        • 2018-07-31
        • 2011-09-05
        相关资源
        最近更新 更多