Compare Products

FindBugs App Parasoft Development Testing Platform App

Features

* FindBugs looks for bugs in Java programs. It is based on the concept of bug patterns. A bug pattern is a code idiom that is often an error. Bug patterns arise for a variety of reasons: * Difficult language features Misunderstood API methods Misunderstood invariants when code is modified during maintenance Garden variety mistakes: typos, use of the wrong boolean operator * FindBugs uses static analysis to inspect Java bytecode for occurrences of bug patterns. Static analysis means that FindBugs can find bugs by simply inspecting a program's code: executing the program is not necessary. This makes FindBugs very easy to use: in general, you should be able to use it to look for bugs in your code within a few minutes of downloading it. FindBugs works by analyzing Java bytecode (compiled class files), so you don't even need the program's source code to use it. Because its analysis is sometimes imprecise, FindBugs can report false warnings, which are warnings that do not indicate real errors. In practice, the rate of false warnings reported by FindBugs is less than 50%. * FindBugs supports a plugin architecture allowing anyone to add new bug detectors. The publications page contains links to articles describing how to write a new detector for FindBugs. If you are familiar with Java bytecode you can write a new FindBugs detector in as little as a few minutes. * FindBugs is free software, available under the terms of the Lesser GNU Public License. It is written in Java, and can be run with any virtual machine compatible with Sun's JDK 1.5. It can analyze programs written for any version of Java. FindBugs was originally developed by Bill Pugh and David Hovemeyer. It is maintained by Bill Pugh, and a team of volunteers. * FindBugs uses BCEL to analyze Java bytecode. As of version 1.1, FindBugs also supports bug detectors written using the ASM bytecode framework. FindBugs uses dom4j for XML manipulation.

Features

* Integration with open source analysis tools and testing frameworks: Download extensions for DTP from the Parasoft Marketplace that enable you to integrate with popular open source tools and systems. * DTP Engines for Java, C/C++, and .NET: Automate the collection of development testing data by configuring and deploying DTP’s native code analysis and test execution tools into your infrastructure. * Interactive explorer views: Dig deeper into static analysis violations, metrics analysis, test results, and coverage through detailed explorer views that show findings in context of the source code, while enabling you manually execute remediation paths, mark tests to be rerun, and more. * Intelligent metadata: Flag violations for remediation and tests to re-run or assign actions to improve the efficiency of the development organization and help bridge the gap between technical and business risk. * Customizable Web-based interface: Leverage built-in or custom dashboards, widgets, and reports for ata-glance information about the status of development activities. * Robust REST and Java APIs: Access defects, requirements, tasks, and other data to integrate with other tools and applications that extend DTP functionality. * Access code from source control directly from the browser: Leverage out-of-the-box integrations with commonly-used SCMs, such as Git, Subversion, AccuRev, Mercurial, Microsoft TFS, and Perforce, or publish sources directly from analysis tools. * Integration with requirements and defect tracking systems: Create links across systems within your development infrastructure, such as TFS, JIRA, Bugzilla, and Rational DOORS to enable customizable DTP workflows. Tests can also be linked via reference numbers.

Languages

Java

Languages

C CPP Java VB.NET

Source Type

Open

Source Type

Closed

License Type

Other

License Type

Proprietary

OS Type

OS Type

Pricing

  • free

Pricing

  • Schedule a Demo
X

Compare Products

Select up to three two products to compare by clicking on the compare icon () of each product.

{{compareToolModel.Error}}

Now comparing:

{{product.ProductName | createSubstring:25}} X
Compare Now