Skip to content

 
  • Automated Acceptance and Web Testing
  • Continuous Integration and Continuous Delivery with Jenkins
  • Test-Driven Development Training and Coaching
  • Expertise in Automated Acceptance Tests and ATDD
  • Test-Driven Development Training and Coaching
  • Automated Acceptance and Web Testing
  • Test-Driven Development Training and Coaching
  • Test-Driven Development Training and Coaching

Installing Sonar on a linux build server

Anyone who has read many of my blog entries or articles will know that I'm a great fan of code quality metrics. By code quality metrics, I am referring to coding standards, best practices, complexity, but also to other associated statistics such as the number of unit tests run and the level of code coverage. Code Quality management is an important part of any project, but sometimes it can be difficult to get a global picture. Any given metric, such as code coverage or code complexity, can be difficult to interpret in isolation. This is where Sonar comes into the picture.

Add a comment

Read more...

A quick primer on testing Selenium in Groovy

Selenium is a widely-used and very useful tool for automated web testing. This article is a very short primer designed to get you up and running Selenium Tests in Groovy in your Maven projects.

Add a comment

Read more...

A whimsical ode to JavaOne

To the tune of 'Money for nothing', by Dire Straits.

Add a comment

Read more...

A silly song for Agile 2009

To the tune of 'Blowing in the wind', by Bob Dylan. This (rather silly) text was inspired by a tweet from Andres Almiray

Add a comment

Read more...

Web testing BDD-style with JWebUnit and Easyb

Behaviour-driven development is a great way to design and build the web layers of your application. In this article, I look at how to use JWebUnit, a fast and light-weight web testing framework, with Easyb, a powerful Groovy-based BDD framework.

Add a comment

Read more...

Learning Corner


Upcoming courses


Upcoming Events

Agile Java Development Practices workshop in Melbourne 04 06 2013 to 07 06 2013