Categories
Development

Continious Integration Servers

Continious integration is a big part of my every day work right now, and it is important that things run smoothly. If they don’t you waste tons of time on stuff that’s not really important to producing funtionality. Over the last year I have been using Continuum. I originally opted for that because CruiseControl is a bit cumbersome to configure, and I figured it would probably integrate best with Maven 2 since it’s the same group of people. I has done an alright job, but has a some weaknesses that made me look for alternatives:

  • No dependency management between projects and builds
  • Triggering a build manually actuallt triggers two builds (double the time)
  • For some strange reason our Fitnesse tests keep acting up and hanging. To prevent this I have implemented a process timeout specifically for Fitnesse, but this still slows down the turnaround time when you need to do builds.
  • No historical aggregated data

As the project grew it was actually the missing dependency features, double builds and the hangs in Fitnesse that forced me to look at other alternatives. Because it didn’t have dependency handling we got failures due to build order quite often, and when we got one failure it took almost an hour to get it back to a green state (we use lava lamps).

Enter Bamboo. 🙂 It’s a fairly new build server from Atlassian the guys also writing the excellent Confluence and Jira products. It is payware, but it is nothing compared to the time we will save. It is not a radical change compared to Continuum, but it sports:

  • Smooth user interface
  • RSS feeds
  • Dependency builds
  • Editing the build queue
  • Historical aggregated data
  • Easy and excellent pugin architecture
  • Commenting on builds
  • Test statistics

And more I havn’t checked out yet… For some weird reason I don’t get the Fitnesse hangs either. I have been testing it for a while now, and we will change over on monday. Highly recommended.

I should also look into the other build servers like TeamCity that offer a slightly different take on things. I saw it was released with Eclipse support now. Any experiences out there?

Categories
Development

Maven guide online

I feel fairly proficient at Maven now after configuring and tweaking our build environment, but it is good to have some resources to back you up. There’s a guide out here, that should explain most aspects. I havn’t really read much of it, but it should be alright.

Categories
Development

Domain Based Web Testing

Browsing through some blogs today I stumbled upon Domain Based Web Testing, which seems like a good idea. 😉 It would take some effort to develop, but in the long run it would probably pay off.

We have a fairly large Watir suite at work right now, and a lot of the has the type of sequences where you are required to fill out a lot of stuff before you get to the part you really wish to test. Doing the domain based thing would make the code easier to read, maintain and also probably less errors and time consuming.