Recent posts about “Clover”

Jesse Gibbs

Atlassian is excited to announce the launch of Clover 2.6, the latest release of Atlassian's award-winning tool for Java code coverage and test optimisation. With performance improvements, new coverage graphs and a bargain-priced Desktop Edition, the industry's best code coverage tool for Java has gotten even better!

Clover Desktop Edition Available for Only $300

2.6 introduces Clover Desktop, designed for an individual developer who wants to run code coverage and optimise tests within an Eclipse-based or IntelliJ IDEA. Clover Desktop licenses cost only $300. Clover Server, which is designed to run in a central build or continuous integration system, provides greater reporting capabilities, including HTML, PDF and XML-formatted reports and historical code coverage trends. Single Clover Server licenses are available for $1200. Clover licenses are also available for 10, 25, 100 and unlimited numbers of machines. Multi-machine licenses can be used to run Clover on the desktop or the server. Read more about Clover pricing

New Features and Improvements in Clover 2.6

checkstyle-tree-map.jpg Tree maps have also been introduced in 2.6 and are an intuitive way to view coverage across large numbers of packages and classes. The size of a rectangle indicates the amount of code, while the color indicates the level of coverage.

Other notable improvements in Clover 2.6 include:


  • Performance and ease of use improvements in the Clover Eclipse and IntelliJ versions.

  • 100% coverage filters let you view only those classes which haven't reached 100% code coverage.


Read the Clover 2.6 Release Notes for a full list of features, improvements and bug fixes.

Free Trial


Clover Desktop and Server are both available for free 30-day trials. Download Clover 2.6 and get started on better Java testing today!

Ken Olofsen

Brendan Duke Award.jpgLast week at JavaOne 2009, Atlassian Clover received the Duke's Choice Award for Java Technology Tools. Clover was hand picked by the Father of Java himself, James Gosling, for it's revolutionary Test Optimization capabilities which can significantly speed up development.

Here is write-up from JavaOne:

Clover is a Java software code coverage tool with test-level insight, instant IDE feedback, interactive reports and test optimization. Clover allows the Java Code Coverage tool to be superior over other coverage tools. More than just a coverage percentage, Clover provides insight into user testing by identifying project risks and quick wins. Clover identifies specific tests that cover various lines of code and automatically identifies which tests need to be run to cover any particular changes. And because of the IDE integration, all the power of Clover test insight can be harnessed without ever leaving your workbench.

clover icon.pngThe Duke award was presented to Brendan Humphreys, Chief Code Poet and Technical Lead of the Clover development team as part of James' Java Toy Show at JavaOne 2009. Principle developers also include Slawek Ginter, Nick Pellow, and Michael Studman.

Congratulations to the entire Clover team!! Learn more at http://www.atlassian.com/clover.

Check out the video:

Ken Olofsen

Clover interview with the Build Doctor

Ken Olofsen talks about Clover May 29, 2009 7:15 AM

Earlier this week, our very own Michael Studman, Clover developer and Man in London, met up with the Julian Simpson, aka the Build Doctor, to have a beer and talk about Clover.

During the interview, they talk about code coverage for functional tests, using Test Optimization for faster builds, and Atlassian dogfooding.

View the video and check out the full post:



Check out our website to learn more about Clover, Bamboo and how they work better together.

John Ferguson Smart

This Bamboo customer story is the seventh of an 8-part blog series about why so many developers adopt continuous integration written by our guest blogger, John Ferguson Smart.
John is a consultant and trainer specialising in Build Automation, Enterprise Java, Web Development, and Open Source technologies, currently based in Wellington, New Zealand.


Clever tools to optimize Continuous Integration

Sandra works in a large government service in Toronto. She is in charge of a team of seasoned developers whose job is to provide technical support and mentoring to other teams, mostly made up of less experienced developers. Recently, her team has been called in to help out a team full of very inexperienced Java developers on an important external-facing web application. These developers, recently brought over from COBOL and the world of mainframes, have a basic Java training but very little experience in the way of best practices. Her team's job is to mentor these inexperienced developers, teaching them the tricks of the trade, so to speak.

Appealing plugins

Atlassian BambooMetrics play a key role in this task. Sandra set up a special "code quality" build plan, which runs a swathe of static analysis tests (including Checkstyle, PMD, and FindBugs), and also comprehensive code coverage reporting using Clover. The Bamboo plugins for each of these tools give her a high-level picture of how these metrics evolve over time. This is an important tool for her to keep tabs on how well the trainee developers are applying the techniques that they are being taught. For example, low or dropping code coverage on a class may indicate that one of the new developers is having trouble assimilating the test-driven development and testing practices that her team is trying to teach.

Atlassian CloverAlthough a high-level view is just what the doctor ordered when you want to keep tabs on the overall health of your development practices, there are still times when you would like to be able to drill down into the details, and see exactly what the violations were in a particular build, or what lines of code were not being tested. To this end, Sandra stores the HTML reports generated by each tool as build artifacts. This way, she can drill down into the detailed reports of any build whenever she wants.

Watertight reports

These reports are also an important part of Sandra's training strategy. She reviews both the high-level statistical views and the detailed reports in a weekly code quality meeting, where any new issues or trends are discussed. Sample Clover Historical ReportIn one of the first meetings, for example, Sandra pointed out the increasing number of Checkstyle violations related to an absence of Javadocs. A short talk on the merits of commenting ones code was enough to put most of the developers back on the right track. The issues raised by FindBugs, for example, are particularly educational, and are often used to discuss some of the finer points of Java programming. In one instance, for example, the discussion over one FindBugs issue reveiled a fundamental misunderstanding about the immutability of Java Strings, which was rectified on the spot by an impropmtu tutorial on the topic of Java Strings.




Last time we talked about automating the staging and production deployments; stay tuned for the next Bamboo customer story when we talk about Continuous Integration for Ruby.

What's your adoption story? Tweet Atlassian or leave a comment below about how and why you adopted CI.

Ken Olofsen

With the release of Clover 2.5, we have taken Test Optimization to a new level with some very significant improvements. You can now take advantage of Test Optimization directly from Eclipse and IntelliJ IDEA with the click of a button. We have also added Test Optimization for functional testing or acceptance testing since these types of tests tend to benefit the most.

clover icon.pngClover is still the essential Java code coverage analysis tool providing detailed per-test coverage data, instant feedback right in your IDE, and interactive historical reports.

Download the latest release today!

What is Test Optimization?

If you are not familiar with Test Optimization, it's a selective testing feature we introduced in Clover 2.4. Since Clover's per-test coverage measures exactly which tests execute which lines of code, an optimised test run is able to automatically determine which tests to run based on the changes you have made. In addition, Test Optimization can prioritise those tests most likely to fail to run first, ensuring that fast feedback.


Optimal testing in your IDE

With Test Optimization at your fingertips in both Eclipse and IntelliJ IDEA, you now have it where you need it most. Typically when making small changes or refactoring, few developers re-run their entire test suite locally prior to committing their changes. Most do some ad hoc testing, or even worse, no testing at all.

Test Optimization lets you run "all tests" in your IDE without having to waste time waiting for irrelevant tests to finish or risk missing that one test which will prevented you from breaking the nightly build. This means you'll likely test more frequently with Clover, improving the quality of your code and speed of development.

Here's an example of how you can test more by testing less:


Save time functional testing

Another area where Test Optimization has a huge impact is functional or acceptance testing. Clover 2.5 now has distributed per-test coverage which means coverage data can be collected multiple JVMs.

Since functional tests have a tendency to run much longer than unit tests, the time savings are even more dramatic. For example, the acceptance testing for our Confluence team takes about 45 minutes, and with Test Optimization many of the test runs are now just a few minutes.


Accelerate your CI Server

Incorporating Test Optimization into your continuous integration environment, like Bamboo or Hudson, can shorten many test cycles allowing you to build and test more frequently.

What else is new in Clover 2.5?

Check out what's new in Clover 2.5 and upgrade / download the latest version for a free 30-day evaluation.