OPERA REST ASSURED

Quality rants by Opera QA

Continuous Integration: Team Testing

, , , ,

As you know, Continuous Integration is a set of simple practices that reduces software integration time and problems. It also improves general software quality with little overhead. Just having a testrun per every commit is quite handy for two reasons: early regression finding and easier debugging.

One of the most important virtues of CI is giving the tests a "social dimension". Martin Fowler's "Everyone can see what's happening" is actually one of the most powerful, yet subtle virtues of Continuous Integration. Letting everyone know about the status of the tests is not about assigning blame when something fails, it's about making the tests part of the development process. We wholeheartedly agree with the vision of automated tests that are incorporated upstream into the development process and run on a continuous basis.

What happens when you make the tests part of the process? Several interesting things:

  • The team focuses on avoiding and fixing regressions due to clear and quick feedback - less "getting out of the door quickly" with more stability.
  • The team has confidence in the code - more refactoring or rewriting of suboptimal modules.
  • Certain processes like deployment are streamlined - easier, clearer and more reliable.


We feel that these benefits make Continuous Integration a natural extension to automated tests for development teams, a bit like "the version control system of tests". Here at Opera we are using Continuous Integration for selected server-side projects, notably the Opera Link server and My Opera. It has had a huge and positive impact on both of these projects, providing a crucial role when refactoring and improving code.

If you are not using Continuous Integration in your project yet, you should start now!

Welcome to Rest AssuredAlexa Global Top 500 Validation Research

Comments

Sami Olmariolmari Friday, July 18, 2008 5:53:58 PM

tsarhan, where do you think opera could save your bookmarks etcetc in yahoo, google, or whatever 3rd party system?

olli Saturday, July 19, 2008 9:48:50 PM

mgillespie: Please keep the feedback constructive. We don't need yet another opera blog to be contaminated with whining..

Esteban Manchado Velázquezzoso Sunday, July 27, 2008 9:32:01 PM

Mickeyjoe_irl: Thanks a lot, sorry I didn't notice. Fixed now.

Uncle MickMickeyjoe-Irl Sunday, July 27, 2008 10:59:16 PM

No worries up

Asa DotzlerAsaDotzler Monday, August 4, 2008 6:13:03 AM

slightly off-topic for this post, but as this blog is new and the right post for this comment hasn't come up yet, I'll just go ahead.

Can you describe the Opera QA team? I'm interested in the number of people you have, how you're organized around features and platforms, etc.

It'd also be cool to know a bit more about your basic toolset like your bug/issue tracker, your automation setups for desktop and mobile, your performance and stability testing and metrics, etc.

Finally, can you tell us about your team's normal daily routines, functional testing, bug reporting, automation development, bug triage and testcasing, etc. etc.

Thanks for starting this blog. QA rocks!!

- Asa

Terry Morrishtmorrish Thursday, December 31, 2009 12:22:03 AM

What you haven't indicated in your blog article on CI is how your team fits and how you manage the testing build to build

Write a comment

You must be logged in to write a comment. If you're not a registered member, please sign up.