Continuous Integration: Team Testing
By Esteban Manchado Velázquez. Friday, 18. July 2008, 12:10:41
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:
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!
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!



tsarhan # 18. July 2008, 15:18
olmari # 18. July 2008, 17:53
mgillespie # 18. July 2008, 18:02
COUGH** OPERA 9.50 COUGH***
That was clearly a marketing driven deadline, not a quality driven one...
tsarhan # 18. July 2008, 18:29
olli # 19. July 2008, 21:48
Mickeyjoe_irl # 23. July 2008, 00:47
http://my.opera.com/operaqa/blog/show.dml/%22http://googletesting.blogspot.com/2008/05/intro-to-ad-quality-test-challenges.html%22
To get the page I had to use:
http://googletesting.blogspot.com/2008/05/intro-to-ad-quality-test-challenges.html
zoso # 27. July 2008, 21:32
Mickeyjoe_irl # 27. July 2008, 22:59
AsaDotzler # 4. August 2008, 06:13
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