精华内容
下载资源
问答
  • PAGE / NUMPAGES Java静态检测工具的简单介绍 - SonarFindbugs 2010-11-04 13:55:54 标签 sonar 休闲 职场资料个人收集整理勿做商业用途 Java静态检测工具的简单介绍 from /?p=9015 静态检查:静态测试包括代码检查...
  • 静态检查:静态测试包括代码检查、静态结构分析、代码质量度量等。它可以由人工进行,充分发挥人的逻辑思维优势,也可以借助软件工具自动进行。代码检查代码检查包括代码走查、桌面检查、代码审查等,主要检查代码和...
  • 开发JAVA白盒测试静态扫描器...现在静态测试已经经过一定的时间了,已经深深的得到了开发的喜欢。更主要的原因是工具让他们即时的发现了代码的问题。同时也给我们开发更多的检查机制带来了更大的信心。JAVA白盒测...

    开发JAVA白盒测试静态扫描器必备基础

    JAVA白盒测试静态扫描器能够在代码不运行的情况下,扫描我们的java代码是否

    存在bug.我们能够在扫描工具嵌入到eclipse开发工具中,让开发实时的扫描,也能够

    在ant下批量后台的扫描。现在静态测试已经经过一定的时间了,已经深深的得到了开发

    的喜欢。更主要的原因是工具让他们即时的发现了代码的问题。同时也给我们开发更多的

    检查机制带来了更大的信心。

    JAVA白盒测试静态扫描器采用扫描class文件,转换为字节码的方式来分析。

    这种方式已经没有语法错误了,而且采用的是标准的字节码指令。所以我们分析

    起来会非常高效,准确。

    当然,我们必须掌握一定的基础知识才能得心应手开发我们自己的检测器。

    1、丰富的、精细化的java开发经验

    这些经验不是语法级别的,是语意级别的。

    这些经验是平时编程中的经过实践检验的最优编程方式。

    这些经验最后是我们规则的来源,把这些经验用规则来实现。

    经验可以来自于自己、开发团队、网络,以及各种渠道。

    《effective java》,《重构,改善既有代码》这两本书有非常多的

    经验值得学习。

    数据库sql优化方面的语句也非常值得使用。

    2、java字节码基础

    必须掌握字节码规则,比如栈、条件、循环、异常、方法调用等,

    在字节码中对应的指令规则。

    如果掌握汇编语言,会对字节码的规则理解有帮助。

    因为我们扫描的是java字节码来判断是否符合规则的。

    《深入java虚拟机》有非常详细的介绍。

    3、设计能力

    该能力也是高级开发工程师必备的能力。

    统一规划设计好规则,代码。

    这样规则的组织不会混乱,代码的组织会更加有条理,易于扩展和维护。

    需要有模式、uml等方面的知识。

    《java与模式》非常经典。

    展开全文
  • Java静态检测工具的简单介绍 from:http://qa.taobao.com/?p=9015 静态检查:静态测试包括代码检查、静态结构分析、代码质量度量等。它可以由人 工进行,充分发挥人的逻辑思维优势,也可以借助软件工具自动进行。 ...
                         Java静态检测工具的简单介绍  from:http://qa.taobao.com/?p=9015   静态检查:静态测试包括代码检查、静态结构分析、代码质量度量等。它可以由人
            工进行,充分发挥人的逻辑思维优势,也可以借助软件工具自动进行。
            代码检查代码检查包括代码走查、桌面检查、代码审查等,主要检查代码和
            设计的一致性, 代码对标准的遵循、可读性,代码的逻辑表达的正确性,代
            码结构的合理性等方面;可以发现违背程序编写标准的问题,程序中不安全、
            不明确和模糊的部分,找出程序中不可移植部分、违背程序编程风格的问题,
            包括变量检查、命名和类型审查、程序逻辑审查、程序语法检查和程序结构
            检查等内容。”。看了一系列的静态代码扫描或者叫静态代码分析工具后,
            总结对工具的看法:静态代码扫描工具,和编译器的某些功能其实是很相似的,
            他们也需要词法分析,语法分析,语意分析...但和编译器不一样的是他们可
            以自定义各种各样的复杂的规则去对代码进行分析。
    
    静态检测工具:
    
    1. PMD
         1)PMD是一个代码检查工具,它用于分析 Java 源代码,找出潜在的 问题:
            1)潜在的bug:空的try/catch/finally/switch语句
            2)未使用的代码:未使用的局部变量、参数、私有方法等
            3)可选的代码:String/StringBuffer的滥用
            4)复杂的表达式:不必须的if语句、可以使用while循环完成的for循环
            5)重复的代码:拷贝/粘贴代码意味着拷贝/粘贴bugs
    
         2)PMD特点:
           1)与其他分析工具不同的是,PMD通过静态分析获知代码错误。也就是说,在
            不运行Java程序的情况下报告错误。
           2)PMD附带了许多可以直接使用的规则,利用这些规则可以找出Java源程序的许
            多问题
           3)用户还可以自己定义规则,检查Java代码是否符合某些特定的编码规范。
    
         3)同时,PMD已经与JDeveloper、Eclipse、jEdit、JBuilder、BlueJ、
          CodeGuide、NetBeans、Sun JavaStudio Enterprise/Creator、
          IntelliJ IDEA、TextPad、Maven、Ant、Gel、JCreator以及Emacs
          集成在一起。
    
         4)PMD规则是可以定制的: 可用的规则并不仅限于内置规则。您可以添加新规则:
           可以通过编写 Java 代码并重新编译 PDM,或者更简单些,编写 XPath 表
           达式,它会针对每个 Java 类的抽象语法树进行处理。
    
         5)只使用PDM内置规则,PMD 也可以找到你代码中的一些真正问题。某些问题可能
          很小,但有些问题则可能很大。PMD 不可能找到每个 bug,你仍然需要做单元测
          试和接受测试,在查找已知 bug 时,即使是 PMD 也无法替代一个好的调试器。
          但是,PMD 确实可以帮助你发现未知的问题。
    
    1. FindBugs
         1)FindBugs是一个开源的静态代码分析工具,基于LGPL开源协议,无需
          运行就能对代码进行分析的工具。不注重style及format,注重检测真正
          的bug及潜在的性能问题 ,尤其注意了尽可能抑制误检测(false positives)
          的发生。以bytecode(*.class、*.jar)为对象进行检查。除了单独动作,还可
          以用作Eclipse 的plug-in,以及嵌入Ant作为task之一 进行利用。
    
         2)findbugs自带检测器的介绍:  findbugs自带60余种Bad practice,80余种
          Correntness,1种Internationalization,12种Malicious code
          vulnerability,27种Multithreaded correntness,23种Performance,
          43种Dodgy。
    
         3)Findbugs的一些特点:
           1)FindBugs主要着眼于寻找代码中的缺陷,这就与其他类似工具有些区别了,
            直接操作类文件(class文件)而不是源代码。
           2)FindBugs可以通过命令行、各种构建工具(如Ant、Maven等)、独立的
            Swing GUI或是以Eclipse和NetBeans IDE插件的方式来运行。                
          3)FindBugs输出结果既可以是XML的,也可以是文本形式的。
          4)开发者可以通过多种方式来使用FindBugs,最常见的是在新编写模块的代码
            分析以及对现有代码进行更大范围的分析。   
          5)不注重style及format,注重检测真正的bug及潜在的性能问题,
            尤其注意了尽可能抑制误检测(false positives)的发生。    
    
        4)FindBugs可检测的bug pattern举例:
          检测java programing中容易陷入的bug pattern,equals() 实现时的一般规约违反
          Null pointer的参照 ,Method的返回值的check遗漏 ,初始化前field的访问,
          Multi-thread的正确性, 同期化处理的矛盾, 无条件的wait(),  Code的脆弱性 ,
          可以变更的静态object ,内部数列参照的return等
    
    1. Checkstyle
         1)定义: Checkstyle是一款检查Java程序源代码样式的工具。
         2)特点:
           1)它可以有效的帮助我们检视代码以便更好的遵循代码编写标准,特
             别适用于小组开发时彼此间的样式规范和统一。
           2)Checkstyle提供了高可配置性,以便适用于各种代码规范,所以
             除了使用它提供的几种常见标准之外,你也可以定制自己的标准。
           3)Checkstyle提供了支持大多数常见IDE的插件,大部分插件中就含有
             最新的Checkstyle,就不用费心再部署一份了。
           4)Checkstyle可以检查代码的很多方面,从传统观点看,它主要是用来
             检查代码层面的,自从第三版以后,它的内部架构作了重大改变,很多
             其它意图的检测加了进来,现在Checkstyle可以检查像类设计的问题,
             重复代码,如锁的双重检查的bug模式。
         3)CheckStyle的主要流程是:
           1)对Java文件进行词法语法分析,生成语法树。
           2)载入配置文件(checkstyle-metadata.xml以及自定义的配置文件)
             register check事件。
           3)按照深度优先遍历对语法树进行解析,按照注册的事件,在到达某些节点
             ( AST ) 时进行style检查(AST,A child-Sibling Tree,是语法
             树中的某个节点,其类型在TokenTypes类中定义。)
         4)我们所说的自定义Style的检查,就是在第二步设定的。
           这里牵涉到一个叫com.puppycrawl.tools.checkstyle.api.Check 的类,
            我们通常需要重载其中的两个函数: public int[] getDefaultTokens()
            public void visitToken(DetailAST ast). 这两个函数的含义为,
            在遍历语法树的过程中,每当到达getDefaultTokens函数所返回的AST类型,
            程序就进入visitToken进行具体的检查和分析,即,真正的分析检查过程是在
            visitToken中实现的。
    
    1. Hammurapi
         1)定义: Hammurapi它是一个开源的代码审查/评审(review)工具。它可以帮助改进
                  Java代码的质量。它可以基于一套设计规范来分析代码库。当它碰到违反规
                  范的地方,会在报告中标识。就像Checkstyle一样,它与Ant无缝集成并且
                  由基于XML配置文件来驱动。
    
         2)特点:
           1)Hammurapi是用来强制代码设计规范的。
           2)Hammurapi是一个遵循设计的工具,提供了自动而且一致的方式来实现设计规范,
             因此使代码评审更加有效而轻松。
           3)Hammurapi如何工作:
             Hammurapi这样的代码分析工具都带有语言分析器。语言分析器是一种输入
             语言代码并输出抽象语法树的工具。这个树上的节点代表语言标识。例如,考
             虑一下简单的算术表达式:3+4. 语言分析器会解析他成为一个如图5所示的语
             法树。在这个树中,节点+代表操作符标识。节点3和4是操作数标识Hammurapi
             使用ANTLR(另一个语言识别工具)作为语言分析器。然而ANTLR API是相当底层的。
             为改善可用性,Hammurapi使用另一个API,基于ANTLR 的JSEL(Java源程序
             工程类库),来访问抽象语法树。 一旦树构建完成,一种树遍历算法就被用来访
             问树中每一个节点。每次访问到一个节点,一种回调机制(Visitor模式)被用来
             提示相应的检查器。在这些回调方法中,检查器收集相关的信息来确定是否有违反
             规范的地方存在。  
    
    1. Lint4j
         1)定义:Lint4J是一个针对Java的源代码分析工具,它可以对Java源码和字节
               码进行静态分析,判断其中是否存在死锁、性能问题或者伸缩性问题。
               它可以集成到任何IDE种或构建系统
         2)特点:
           1)检测代码语法规则
           2)潜在的bug
           3)检测编码模式对代码可读性及大小的影响
           4)检测是否违反EJB规范
    
    1. Sonar
         1)定义:代码质量管理工具Sonar提供了设计与架构度量。Sonar 2.0引入了
                针对Java应用的设计分析、架构与面向对象的度量,Sonar 2.1可以
                检测到未使用的方法以及对不建议使用方法的调用。是一个集成了
                CheckStyle,PMD,Findbugs的代码校验规则 ,重复代码发现,
                代码测试覆盖率, 代码注释率,及所有的检测率变化追踪的完美
                代码质量检查工具。它包含了代码质量检测的七个方面,如下图
    
         2)特点:
            1)代码覆盖:通过单元测试,将会显示哪行代码被选中。
            2)改善编码规则。
            3)搜寻编码规则:按照名字,插件,激活级别和类别进行查询。
            4)项目搜寻:按照项目的名字进行查询。
            5)对比数据:比较同一张表中的任何测量的趋势。
            6)单元测试
    
         3)Sonar2.1:
           Sonar还基于Squid引入了一个全新的规则引擎、Sonar解析器既可以处
           理源代码,也可以处理字节码,解析器带有内建的规则,可以检测未使用
           的私有与保护方法以及客户端对不建议使用的方法的调用。
           Squid通过分析应用源代码、Java API和外部程序库
           的字节码来决定哪些方法、类和属性是不建议使用的。
           Sonar 2.1的新特性:
            1)一个全新的“Libraries”页面,显示了项目中所有的程序库和依赖,该特性要求使用
               Maven来构建项目。
              一旦在Sonar站点的主页上选择了一个项目,该服务就会以
              可视化的树形结构展示出项目依赖。此外,还有一个可选的
              动态过滤器,可以根据名称过滤程序库以便在应用的依赖间导航。
            2)用于搜索程序库使用情况的“Dependencies”页面。比如说,可以
             搜索到使用了第三方框架如Commons Logging 1.1的所有项目。
            3)可以使用各种插件扩展Sonar的功能。现在有一个全新的
             “System Info”页面显示了系统属性、已装插件和Java虚拟机内存
              统计信息。该页面还给出了关于Sonar配置和数据库统计的详细信息。
            4)一个用于管理已装插件和系统信息的管理控制台。
              最新版的Sonar为这些插件引入了一个测试框架和一个客户化的Maven
              生命周期管理工具。它还带有一个用于集成项目事件的
              Web Service并在项目的size widget中增加了一个新的度量模块。
    
    1. JDepend
         1)JDepend一个开放源代码的可以用来评价Java程序质量的优秀工具,
           它遍历Java class的文件目录,以Java包(package)为
           单位,为每一个包/类自动生成 包的依赖程度,稳定性,可靠度等
           的评价报告,根据这些报告,我们可以得到包或类之间的依赖关
           系,并分析出包的稳定程度,抽象程度,是否存在循环依耐关系等 。
           可以根据JDepend给出的报告数据,分析出我们的包是否是
           可靠的,稳定的,健壮的包,是否符合面向对象的设计原则。
    
        2)特点:
          1)评价设计质量
          2)翻转依赖性
          3)支持并行开发和极限编程
          4)独立的发布模块
          5)识别package的循环依赖
    
        3)Depend生成的Java包的质量评价报告主要包括:    
          1)Number of Classes and Interfaces:实现类与抽象接口的数目
          2)Abstractness (A):包的抽象度。指一个包内包含的抽象类或接口
           占整个包中的类的比重。
          3)Afferent Couplings (Ca):向心耦合。依赖该包(包含的类)的外
            部包(类)的数目(i.e. incoming dependencies),该数值越大,
            说明该包的担当的职责越大,也就越稳定。
          4)Efferent Couplings (Ce):离心耦合。被该包依赖的外部包的数目
           (i.e. outgoing dependencies),该数值越大, 说明该包越不独
            立(因为依赖了别的包),也越不稳定。
          5)Instability (I):衡量一个包的不稳定程度。I=Ce/(Ce+Ca)。它的值处于
            [0,1]之间。I=0时说明包是最稳定的,反之I=1则说明包极不稳定。
          6)Distance from the Main Sequence (D): 该指标主要用来评价包的抽象
            程度与稳定程度的平衡关系,它可以用二维直线图 A + I = 1 来表示。
          7)Package Dependency Cycles:包的循环依赖度。
    
    8.  IBM Checking Tool for Bugs Errors and Mistakes(简称BEAM)
        1) 定义:是 IBM 开发的一个静态分析工具,可以用于分析并查找出 C, C++ 和 Java
                代码中的一些不容易发现的潜在错误,从而达到提高代码质量的目的。同动态
                 分析工具和其它静态分析工具相比,它拥有一些可贵的特性。
        2)特点:
          1)对代码进行语法扫描,通过算法对代码进行检查分析
          2)和一些 bug 模式进行比较,最终标明问题区域,输出分析结果
          3)使用了额外的定理证明(theorem proving)技术来判断一个潜在的错误是否
            是真正的错误,从而减轻了程序员判断错误真伪所需的工作量
    
     9. LDRA Testbed  
        1)定义:LDRA Testbed为应用软件的确认和验证提供强大的源代码测试和分析功能,
               是独特的质量控制工具。 它有助于提高计算机软件必需的可靠性,健壮性和尽
               可能的零缺陷,它的使用带来时间、成本和效率上真实的节省,这些都是无法衡
               量其价值的。它是强大和完整的集成工具包,使先进的软件分析技术应用在开发生
               命周期的关键阶段。
        2)LDRA Testbed提供强大的分析功能,用于两个主要的测试领域,静态分析和动态分析。
           1)静态分析: 分析代码,并且提供对代码结构的理解。
           2)动态分析: 利用源代码的插装版本,使用测试数据执行,在运行时发现软件
              缺陷
        3) 使用LDRA testbed 的好处
           软件开发和测试过程的成本效率分析工具
           单元、集成和系统测试的理想工具 
           贯穿于软件开发的整个生命周期
    
         LDRA Testbed应用于许多不同的领域 
           过程改进
           软件测试
           软件维护
    
        LDRA Testbed的优点:
           改进软件质量
           定位软件缺陷
           强制执行工业标准
           减少维护费用40%以上
           减少开发和测试成本75%以上
           通过自动化过程提高员工动力
    
    10.   Yasca 
      1) 定义:yasca是一个开源静态代码分析工具插件框架, 集成流行的多语言静态分析工
              具如findbugs/pmd/jlint/rats/cppcheck,由于插件本身多样故可支持java
              c++等语言静态分析.Yasca是一个用来寻找安全漏洞,在程序的源代码中检测代
              码质量、性能以及一致性的软件。它集成了其他开源项目,其中包括FindBugs
               PMD ,JLint , Cppcheck ,并扫描某些文件类型,以及自定义扫描书面的
             Yasca 这是一个命令行工具,与报告中生成的HTML , CSV格式, XML的,的
             SQLite ,和其他格式。

     

     本文转自 tianya23 51CTO博客,原文链接:http://blog.51cto.com/tianya23/415146,如需转载请自行联系原作者

    展开全文
  • 本文主要介绍利用java静态代码检查工具findbugs进行代码检查,包括其作用、安装、使用、高级功能(远程review和bug同步)。虽然Android提供了Test Project工程以及instrumentation可以方便的进行单元测试,不过据了解...

    本文主要介绍利用java静态代码检查工具findbugs进行代码检查,包括其作用、安装、使用、高级功能(远程review和bug同步)。

    虽然Android提供了Test Project工程以及instrumentation可以方便的进行单元测试,不过据了解国内Android开发会写自测代码的寥寥无几。那么有没有简单的方法一定程度上保证代码质量呢。Android应用开发大多使用Java,所以对于Java代码检查工具都可以适用,本文介绍其中功能较为强大的findbugs。

    1、findbugs作用

    findbugs可用于对java代码进行静态检查,检查bug类型包括:

    XHTML

    Bad practice 坏的实践:常见代码错误,序列化错误,用于静态代码检查时进行缺陷模式匹配

    Correctness 可能导致错误的代码,如空指针引用等

    国际化相关问题:如错误的字符串转换

    可能受到的恶意攻击,如访问权限修饰符的定义等

    多线程的正确性:如多线程编程时常见的同步,线程调度问题。

    运行时性能问题:如由变量定义,方法调用导致的代码低效问题。

    1

    2

    3

    4

    5

    6

    Badpractice坏的实践:常见代码错误,序列化错误,用于静态代码检查时进行缺陷模式匹配

    Correctness可能导致错误的代码,如空指针引用等

    国际化相关问题:如错误的字符串转换

    可能受到的恶意攻击,如访问权限修饰符的定义等

    多线程的正确性:如多线程编程时常见的同步,线程调度问题。

    运行时性能问题:如由变量定义,方法调用导致的代码低效问题。

    记住一点,findbugs只能用于代码静态检查,对于动态运行中不断变化的数据产生的bugs是无法捕捉的,所以不能代替单元测试、功能测试、性能测试,只能说一定程度上检查简单错误。

    2、findbugs安装

    通过Eclipse插件进行安装

    Eclipse -> Help -> Install New Software, site输入http://findbugs.cs.umd.edu/eclipse,进行安装。

    3、findbugs使用

    右击工程,选择Find Bugs -> Find Bugs即会对代码开始检查。检查完成后通过Windows -> Show View -> Find Bugs -> Bug Exporer查看bug列表,如TrineaAndroidCommon工程检查结果如下图:

    2325e8859ba7a48ca0300fba7959f17c.png

    点击右上角+标记展开所有bug细节,点击某个bug进入相应代码行

    findbugs会对bug进行分类,同时每一类中会按bug的优先级分类,如下图

    8dbd5040f9ccf1d076f41419cb01491c.png

    4、findbugs高级功能

    findbugs提供了代码review以及在线同步功能,这样,对于一个团队,尤其是异地工作,可以方便的代码review。以前在阿里应用有专门的开发部门开发类似功能。

    右击工程,选择Properties -> Find Bugs, 勾选Enable project specific settings, store issue evaluations in选择FindBugs Cloud。在Bug Exporer视图中选中某个bug,在Bug Reviews视图中填写review信息即可,如下:

    74af5b1343dd0a5ed5124a9f16edeadf.png

    不过国内findbugs被强了,vpn访问吧

    展开全文
  • 代码静态测试工具

    千次阅读 2018-08-24 21:04:23
    Ounec5.0 扫描语言VB、C、C++、C#、Java,属于付费工具。 Coverity Prevent 扫描语言有C、C++、C#、Java,属于付费工具。 Stake SmartRiskAnalyzer 扫描语言C、C++、Java,属于付费工具。 Rational Purify ...

    Ounec5.0  扫描语言VB、C、C++、C#、Java,属于付费工具。

    Coverity Prevent  扫描语言有C、C++、C#、Java,属于付费工具。

    Stake SmartRiskAnalyzer  扫描语言C、C++、Java,属于付费工具。

    Rational Purify  扫描语言C、C++、Java,属于付费工具。

    Jtext  扫描语言Java,属于付费工具。

    Flawfinder  扫描语言C、C++、属于付费工具。

    Static Code Analyzer  扫描语言C、C++、C#、Java,属于付费工具。

    PolySpace Client  扫描语言C、C++、python、perl、php,开源

    Fluid  扫描语言Java,开源。

    展开全文
  • Java静态代码分析(staticcodeanalysis)工具能够在代码构建过程中帮助开发人员快速、有效的定位代码缺陷并及时纠正这些问题,从而极大地提高软件可靠性并节省软件开发和测试成本。目前市场上的Java静态代码分析工具
  • Java 静态代码分析(static code analysis)工具能够在代码构建过程中帮助开发人员快速、有效的定位代码缺陷并及时纠正这些问题,从而极大地提高软件可靠性并节省软件开发和测试成本。目前市场上的 Java 静态代码...
  • 主流Java静态分析工具 三者区别 三者内置编程规范 测试对比 总结 静态检查概念 静态代码分析是指无需运行被测代码,仅通过分析或检查源程序的语法、  结构、过程、接口等来检查程序的正确性,找出代码隐藏的...
  • 静态测试包括代码检查、静态结构分析、代码质量度量等。它可以由人工进行,充分发挥人的逻辑思维优势,也可以借助软件工具自动进行。代码检查代码检查包括代码走查、桌面检查、代码审查等,主要检查代码和设计的一致...
  • 静态代码分析( static code analysis ) 工具能够在代码构建过程中帮助开发人员快速、有效地定位代码缺陷并及时纠正代码问题,从而极大提高软件可靠性且节省了开发成本和测试成本。现在市场上有很多静态分析工具,...
  • 第一代:JUnit :优点:1.开源2.测试后代码的质量提高明显3.JUnit是Java写的4.开发者写出测试代码。它证明代码需要做什么。如果有Bug会报错。...5.测试的覆盖率很难上去,测试只是静态的,线型的,...
  • JAVA静态分析工具-FindBugs

    千次阅读 2006-07-12 15:02:00
    JAVA测试工具中,我常用的有JUnit、JMeter、JProfiler等,但我发现这些都是动态的。今天试用了FindBugs,一个静态分析工具,感觉非常不错,还支持Eclipse集成,从此决定作为必备工具了,呵呵。 FindBugs网站:...
  • 静态检查:静态测试包括代码检查、静态结构分析、代码质量度量等。它可以由人 工进行,充分发挥人的逻辑思维优势,也可以借助软件工具自动进行。 代码检查代码检查包括代码走查、桌面检查、代码审查等,主要检查...
  • 静态测试包括代码检查、静态结构分析、代码质量度量等。它可以由人工进行,充分发挥人的逻辑思维优势,也可以借助软件工具自动进行。代码检查代码检查包括代码走查、桌面检查、代码审查等,主要检查代码和设计的一致...
  • 本次案例,使用java语言实现的测试平台来做为扫描对象。2、了解java项目代码的结构。为什么要了解项目代码结构呢?1)区分出来,哪些是开发人员写的代码,哪些是引用的第三方包或配置文件等。2)sonarQube主要是分析...
  • Java静态检测工具的简单介绍 from:http://qa.taobao.com/?p=9015 静态检查:静态测试包括代码检查、静态结构分析、代码质量度量等。它可以由人 工进行,充分发挥人的逻辑思维优势,也可以借助软件工具自动进行...
  • java静态检测工具---常用插件

    千次阅读 2011-08-03 09:03:00
    静态检查:静态测试包括代码检查、静态结构分析、代码质量度量等。它可以由人  工进行,充分发挥人的逻辑思维优势,也可以借助软件工具自动进行。  代码检查代码检查包括代码走查、桌面检查、代码审查等,主要检查...
  • 静态代码检查1.1工具阿里代码规范检测工具1.2规范等级在 Snoar 中对代码规则有五个级别,这是前三个:崩溃/严重/重要 ,也就是说前两级别是必须要处理掉的。Blocker:​ 即系统无法执行、崩溃或严重资源不足、应用...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,496
精华内容 598
关键字:

java静态测试工具

java 订阅