1. PMD from http://pmd.sourceforge.net/ PMD能够扫描Java 源代码,查找类似以下的潜在问题: 可能的bug——try/catch/finally/switch语句中返回空值。 死代码——未使用的局部变量、参数、私有方法。 不理想的代码——使用String/StringBuffer。 过于复杂的表达式——没有必要使用if语句、while循环可以代替for循环。 重复代码——复制/粘贴的代码引发的bug。 PMD集成了JDeveloper, Eclipse, JEdit, JBuilder, BlueJ, CodeGuide, NetBeans/Sun Java Studio Enterprise/Creator, IntelliJ IDEA, TextPad, Maven, Ant, Gel, JCreator, 以及 Emacs。 2. FindBug from http://findbugs.sourceforge.net FindBug是一个使用静态方法来查找Java代码漏洞的程序。 3.Clover from http://www.cenqua.com/clover/ 这个插件允许你在不离开IDE的环境条件下来衡量和检测覆盖效果。该插件通过使用Apache Ant、Maven来无缝集成其它项目,可以通过命令行界面和API系统轻松集成到传统的构建系统中。 该插件的特性: 支持快速、准确、可配置的方法,语句等。 支持丰富的报告格式:HTML、PDF、XML、以及Swing GUI。 精确控制源代码级别的过滤。 支持代码覆盖以及其它指标的图表。 完全兼容JUnit 3.x & 4.x, TestNG, JTiger以及其它的测试框架。 4. Macker from http://innig.net/macker/ Macker是一个适用于Java开发人员用来检查架构规则的工具。你可以定制一个适合特定项目架构的规则文件,也可以为您的代码撰写通用的规则说明。 5. EMMA from http://emma.sourceforge.net/ EMMA支持的覆盖类型:方法、类等。 输出报告的格式为:文本、HTML、XML。 输出报告可以高亮显示某些项目。 EMMA不需要访问源代码,可以在输入类中减少调试的信息。 6. XRadar from http://xradar.sourceforge.net/ XRadar是一个开放的、为代码生成可扩展报告的工具。目前支持基于Java的所有系统。批量处理的框架可以用来生成HTML/SVG系统的报告。Xradar可以估量代码的大小、复杂性以及代码的重复性、依赖性等。 7. Hammurapi from http://www.hammurapi.com Hammurapi是一款执行Java程序代码的自动检测工具。提供的实例中含有282条Hammurapi代码规则,提供了120多个Java类,这款所谓的检测工具,可以从三个级别来检测代码是否违背了编码标准。 8. Relief from http://www.workingfrog.org/ Relif是一款设计工具,为Java项目提供了崭新的面貌。我们可以充分发挥自己的能力来处理真实的实例——通过检测大小、形状、关系等来简化处理过程。 9. Hudson from http://hudson-ci.org/ Hudson 是一个持续集成工具,使用Java编写,运行在servlet容器中,比如Apache Tomcat或者或GlassFish应用服务器。它支持SCM工具,包括CVS、Subversion、Git和ClearCase。它可以执行Apache Ant、基于Apache Maven的项目、以及任意的shell脚本和 Windows批处理命令。 10. Cobertura fromhttp://cobertura.sourceforge.net/ Cobertura是一个免费的基于jcoverage的Java工具,用于计算代码被测试访问的百分比,它可以被用来确定Java程序中的缺少部分的测试覆盖率。 11. SonarSource from http://www.sonarsource.org/ Sonar是一个管理代码质量的开放平台。因此,它涵盖了代码质量的7个方面:架构与设计、重复、单元测试、复杂性、潜在错误、编码规则、评论。 英文原文:http://java.dzone.com/articles/java-tools-source-code
Java代码质量检测评估工具 “五大” 代码分析领域: * 编码风格 * 冗余代码 * 代码覆盖率 * 依赖项分析 * 复杂度监控 一下列举了一些目前比较流行的工具。网址后面列出了其PR值,可以反映此工具的流行度。 1、编码风格 CheckStyle Home page: http://checkstyle.sourceforge.net/ (6) 对应的eclipse插件有多个,其中eclipsecs最常用 Home page: http://eclipse-cs.sourceforge.net/ (6) eclipse插件URL:http://eclipse-cs.sf.net/update/ 2、冗余代码 Simian http://www.redhillconsulting.com.au/products/simian/ (5) PMD 的 CPD http://pmd.sourceforge.net/cpd.html (5) 3、代码覆盖率 EMMA http://emma.sourceforge.net/ (6) Cobertura http://cobertura.sourceforge.net/ (6) EclEmma http://update.eclemma.org/ (5) Coverlipse http://coverlipse.sourceforge.net/ (3) 4、依赖项分析 JDepend http://clarkware.com/software/JDepend.html (6) 5、复杂度监控 Metrics http://metrics.sourceforge.net/ (4) 具有以上两项或两项以上的综合工具(也称为静态分析工具): 1、PMD Home page: http://pmd.sourceforge.net/ (6) eclipse插件URL:http://pmd.sourceforge.net/eclipse 2、FindBugs http://findbugs.sourceforge.net/ (6) eclipse插件URL:http://findbugs.cs.umd.edu/eclipse FindBugs 检查程序生成的class文件,即分析字节码 PMD 检查源码,分析源代码 3、Jtest http://www.parasoft.com/jtest 4、Jlint http://artho.com/jlint/ (5) 5、Lint4j http://www.jutils.com/ (4)
相关推荐
Java代码质量控制是软件开发过程中不可或缺的一环,它关乎到代码的可读性、可维护性、性能以及潜在的bug预防。本篇将详细介绍几种常用的代码质量控制工具,包括它们的功能、用途以及如何使用。 首先,我们需要理解...
在软件开发过程中,度量代码行数是一种常见的评估项目规模、复杂性和工作量的方法。...无论是在个人项目还是大型团队开发中,定期使用这类工具进行代码统计都是良好实践的一部分,有助于提升开发效率和代码质量。
这样的工具对于软件工程的代码质量管理、项目进度评估以及代码复杂度分析具有重要意义。 在软件开发过程中,代码行数(Lines of Code, LOC)是一个常用的度量标准,虽然它并不能完全反映代码的质量和复杂性,但可以...
本文将详细探讨Java代码测试的关键概念、工具和技术。 1. 单元测试: 单元测试是对软件中的最小可测试单元进行检查,对于Java来说,这通常是单个方法。JUnit是最流行的Java单元测试框架,它允许开发者编写断言来...
本文将详细探讨在敏捷开发流程中提高Java代码质量的五个关键步骤及其实践方法。 #### 二、统一编码规范与代码样式 统一的编码规范不仅能够提升代码的可读性和可维护性,还能促进团队协作效率。因此,为项目制定...
Java测试是确保代码质量、提高软件可靠性的重要环节,它通过自动化的方式验证程序的功能是否按预期工作,以及在各种情况下是否能够正确处理异常。 在Java中,JUnit是最常用的单元测试框架,它提供了断言方法来判断...
- **代码静态度量分析质量检查工具**:如 Logiscope 和 Macabe,用于静态分析代码质量。 #### 黑盒测试工具 黑盒测试主要关注软件的功能性,而非内部实现细节。常见的黑盒测试工具包括: - **客户端功能测试**:...
在压缩包中的“常用JAVA代码质量静态检查工具.ppt”可能是一个详细的PPT演示文稿,它可能包含了这些工具的详细介绍、使用方法、案例分析以及如何将它们集成到开发工作流中的指南。为了充分利用这份资源,你可以下载...
总的来说,白盒测试工具在软件开发中扮演着至关重要的角色,它们帮助开发者在代码层面发现潜在的问题,提高代码质量和软件的可靠性。通过使用这些工具,开发团队可以更有效地预防和解决代码缺陷,从而加速软件开发...
总的来说,代码检测工具是现代软件开发不可或缺的一部分,它们通过自动化和标准化的过程,帮助提升代码质量、安全性和团队效率。正确地选择、配置和使用这些工具,对于任何开发组织来说都至关重要。
- **静态测试工具**:这类工具不依赖于程序的实际运行,而是直接对源代码进行语法扫描,检查是否存在编码规范上的问题,并根据特定的质量模型评估代码质量。此外,还可以生成调用关系图等辅助材料,帮助开发者更好地...
PMD和FindBugs是Java的静态代码分析工具,它们可以在编码阶段发现潜在的问题和不良实践,提高代码质量。这些工具可以集成到IDE或构建工具中,作为代码审查的一部分。 综上所述,这个基于Java的软件测试实验代码涵盖...
1. **WinRunner**: 企业级功能测试工具,支持自动录制、检测和回放,优化测试流程,特别适合检测应用程序功能和运行情况。 2. **QARun**: 自动回归测试工具,相对WinRunner学习成本较低,需安装.NET环境,可与...
本文将对三个常用的Java JSON库——json-lib、Jackson和Gson进行分析和测试,以帮助开发者更好地理解和选择适合自己的JSON处理工具。 首先,我们来看json-lib。这是一个古老的JSON库,它提供了多种语言的JSON支持,...
在Java编程领域,统计源代码量是一项常见的任务,它有助于开发者了解项目的规模,评估开发进度,以及进行代码质量分析。本程序就是一个专为此目的而设计的工具,它可以帮助我们快速统计出一个项目中的源代码行数。...
Java游戏测试是一个涵盖广泛的主题,它涉及到使用Java编程语言对电子游戏进行质量保证的过程。Java因其跨平台兼容性和丰富的库支持而被广泛用于游戏开发,尤其是对于移动平台,如Android。游戏测试是确保游戏功能...
本篇主要围绕"Java测试很好的测试用例文档"展开,通过深入探讨测试用例设计、常用的Java测试工具以及测试策略,旨在证明Java应用程序的可测试性。 测试用例文档是测试过程中必不可少的部分,它详细记录了对软件功能...
白盒测试工具通过对代码深入分析,不仅可以发现深层次的逻辑错误,还能提升代码质量和软件性能。了解并熟练运用这些工具,对于软件工程师和测试人员而言,是提高工作效率和项目成功率的关键。通过本文的介绍,相信...
Python开发者有PyLint、DeepSource、Codacy、SonarQube、Veracode、Checkmarx、Coverity和CodeScene等多种选择,这些工具分别提供不同的功能,如代码质量分析、安全扫描和行为分析。 **单元测试**是验证代码正确性...