Author: osit

jMock is a library for testing Java code using mock objects. Mock objects help you design and test the interactions between the objects in your programs. The jMock package: * makes it quick and easy to define mock objects, so you don’t break the rhythm of programming. * lets you define flexible constraints over object interactions, reducing the brittleness of your tests. * is easy to extend.

Read More

XStream is a simple library to serialize objects to XML and back again. Features: – Ease of use. A high level facade is supplied that simplifies common use cases. – No mappings required. Custom objects can be serialized without need for specifying mappings. – Performance. Speed and low memory footprint are a crucial part of the design, making it suitable for large object graphs or systems with high message throughput. – Clean XML. No information is duplicated that can be obtained via reflection. This results in XML that is easier to read for humans and more compact than native Java…

Read More

Checkstyle is a development tool to help programmers write Java code that adheres to a coding standard. It automates the process of checking Java code to spare humans of this boring (but important) task. This makes it ideal for projects that want to enforce a coding standard. Checkstyle is highly configurable and can be made to support almost any coding standard. An example configuration file is supplied supporting the Sun Code Conventions. As well, other sample configuration files are supplied for other well known conventions.

Read More

Clover is a code coverage analysis tool. It discovers sections of code that are not being adequately exercised by your unit tests. Clover reports its findings in multiple formats for easy use by the whole team at the project level down to each line of source code. – Fully integrated with NetBeans, Eclipse, IntelliJ IDEA, JDeveloper 10g, and JBuilder – Seamless Integration with projects using Ant. Easy integration into legacy build systems with command line interface. – Accurate, configurable, detailed coverage reporting of Method, Statement, and Branch coverage – Rich reporting in HTML, PDF, XML or a Swing GUI -…

Read More

Clirr is a tool that checks Java libraries for binary compatibility with older releases. Basically you give it two sets of jar files and Clirr dumps out a list of changes in the public api. The Clirr Ant task can be configured to break the build if it detects incompatible api changes. In a continuous integration process Clirr can automatically prevent accidental introduction of binary compatibility problems.

Read More

PMD scans Java source code and looks for potential problems like: * Unused local variables * Empty catch blocks * Unused parameters * Empty ‘if’ statements * Duplicate import statements * Unused private methods * Classes which could be Singletons * Short/long variable and method names PMD has plugins for JDeveloper, JEdit, JBuilder, NetBeans/Sun ONE Studio, IntelliJ IDEA, TextPad, Maven, Ant, Eclipse, Gel, and Emacs.

Read More

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. We have found that FindBugs finds real errors in most Java software. Because its analysis is sometimes imprecise, FindBugs can report false warnings,…

Read More

Development of jcoverage ceased and has subsequently been forked into Cobertura becoming the most widely used code coverage utility for Java.

Read More

Fisheye delivers a unified view of your repository that provides easy navigation, powerful search, historical reporting, configurable file annotation and diff views, changeset analysis, RSS feeds, and integration with your issue tracker. Many more features and enhancements are also under development. FishEye takes the pain out of extracting data from you repository, and puts all that data on your radar. Browse Quickly find the files and directories you are looking for: * Easily traverse deep directory hierarchies with FishEye’s exploded directory browser. [eg] * See the latest changes in the subtree you are browsing. * Per-directory and per-file linecount history…

Read More