Continuous Integration and Testing

[article]
Summary:
Lisa Crispin explains in this article how CI has become an absolute necessity for any software development team in this day and age. For those who have yet to fully embrace CI, this article gives you some great reasons you should, along with some helpful resources to get you started.

CITCON North America 2009 was held last weekend in Minneapolis. I'm on the organizing committee, but was unable to attend this year due to a conflict. I was bummed, because I found the one last year to be one of the most valuable conferences I've ever attended.

The biggest feedback received at the conference is that the participants wished there had been more testers, or at least, more "tester-programmers." Most attendees were programmers or "programmer-testers," so there weren't as many testing-oriented sessions--especially business-facing-type testing.

We've been discussing this on the CITCON mailing list ([email protected]). I've also been polling on Twitter and agile-testing ([email protected]) to see if any testers had seen the announcement to CITCON, considered attending, and decided not to. Why wouldn't they be interested in a free, open-space conference about testing?

Economics came up a lot—many testers said they couldn't afford to go to any conferences, their employers have no budget for that, and they don't have resources to pay for themselves. Time was another factor. However, these economic and time issues apply to everyone, not only testers.

Some people suggested that continuous integration (CI) doesn't really provide value for testers, only for developers, and maybe it would help if the conference were named Testing and Continuous Integration instead. I'm not opposed to changing the name (although TCICON doesn't roll off the tongue quite as well as CITCON, which is pronounced with two hard Cs), but I'm disturbed at the suggestion that CI isn't important to testers.

Without a continuous integration and build process, how can testers possibly get stable code builds to deploy for testing? What if you deploy a build, only to find there's a "test-stopper" bug, and you can't go back to a previous stable build?

If there's no CI process running a safety net of unit tests, testers will likely spend all their time finding and reporting unit-level bugs and have no time for the most important exploratory testing, functional and non-functional testing.

There was a time not so long ago when a lot of teams worked without source code control systems. Now it's impossible to imagine working without good source control and versioning ability. I think all testers would agree that this is absolutely necessary.

Continuous integration is undergoing the same transformation. It's not a "nice to have." If your team has no automated continuous integration and build process, stop everything you're doing and get one in place. It's not that hard, it doesn't take long, and there are plenty of excellent open source and vendor tools to support it. Without CI, you're going to waste a lot of time and never get to the most important types of testing such as exploratory testing.

Don't know much about CI? The CITCON mailing list is a good place to start. There are free services such as the CI Guys. Google "continuous integration"; Martin Fowler's excellent explanation of it comes up first, and that's a great place to start.

No matter what your role is on a software development team, you need to know why CI is extremely valuable to you and your team's success.

User Comments

6 comments
Anonymous's picture
Anonymous

What was covered during the CITCON Conference? Perhaps Minn MN is not the place. Lisa, Matrix Systems will be following you and Sticky Minds on twitter for updates feel free to add us too. http://twitter.com/matrixsystems

April 29, 2009 - 11:46pm
Anonymous's picture
Anonymous

I am a Quality Assurance professional and I disagree that CI isn't important to Quality and Testing professionals. I think that the reasons that you have stated in this blog are correct. I have found that CIT has not only minimized the number of build faliures it has minimized the number of "showstopper" issues that are released to our testing environment. I was unaware of the CIT CON conference and the CITCON mailing list. I am now following stickyminds on twitter. http://twitter.com/kisshelld

April 30, 2009 - 12:15am
Anonymous's picture
Anonymous

I also agree that CI is important to testing professionals. Thanks for writing this blog. As an Integration provider, I found it pretty interesting. I also did not know anything about the conference. A name like TCITCON doesnt roll off the tongue. What about T&CI Expo or just TCIT. Thanks.

November 24, 2009 - 12:26am
Anonymous's picture
Anonymous

Hello. I found your blog using msn. This is a effectively written article. I am certain to bookmark it and come returning to read much more of your useful info. Was looking for post. I am going to certainly return.

September 25, 2011 - 5:50pm
daviddewald's picture
daviddewald

Thanks for commenting!

September 26, 2011 - 1:05pm

About the author

AgileConnection is a TechWell community.

Through conferences, training, consulting, and online resources, TechWell helps you develop and deliver great software every day.