Free Newsletters

  
Open Sources | Rodrigues & Urlocker » Internal vs. External Testing?

December 07, 2007 | Comments: (0)

Internal vs. External Testing?

When I first arrived at MySQL more than 4 years ago, we didn't have much in the way of internal Quality Assurance. There were a couple of test suites that had been created and many engineers wrote unit tests. We supported a wide range of platforms, but formal testing was pretty spotty. As bugs were identified and fixed, the test suites were extended to help identify regressions. It was by no means a bullet-proof process; mostly the team depended on external testers to report issues. Sometimes a build would be created that would have some embarassing bug and we'd scramble to fix it.

Since that time, we have introduced many more internal QA processes. The test suites are now 10x larger than they were just a few years ago. Our build system and use of automated tools for static and dynamic code analysis has expanded. And we also eat our own dogfood, running beta and RC software more routinely on internal applications. For example, we've been running MySQL 5.1, now a solid release candidate, for more than six months on our web site and internal applications.

While it's taken a few years, I think we have arrived at a good balance between internal and external testing. There's no way we could ever hire enough QA people to make up for the tens of thousands who download MySQL every day. They report unique corner cases or weird combinations that internal testing would likely never find. And our internal testing has now made it so that quality is now more consistent and we have fewer regression errors.

So I guess it's not a question of Internal vs. External testing, but more a question of finding the right balance. Interesting that there's also a trend among closed source companies, like Microsoft, to adopt some of these techniques that used to be only found in the open source world. Microsoft has expanded their external testing with the Community Technology Preview (CTP) programs. Good to see the learning on both sides...

Posted by Zack Urlocker on December 7, 2007 06:36 AM


RATE THIS ARTICLE:





 

  •  
  • COMMENTS




Nice inside information about MySQL's development processes.

However, I cannot follow the logic in having 10 times more tests and seeing fewer regressions. I would have expected that having a magnitude more tests, would result in more regressions caught.

Posted by: Hakan Kuecuekyilmaz at December 7, 2007 10:00 AM

Good observation. I guess what I should have said, is we find more of these regressions through internal testing before the software gets posted to the external community.

--Zack

Posted by: ZUrlocker at December 7, 2007 10:44 AM

MySQL 5.0.48 Enterprise, which was pulled due to very basic sorting functionality being broken, begs to differ.

I'm happy there is more QA and more testing but the enterprise/community release cycle changes are seriously hurting the integrity of MySQL. 5.0.48 is rock solid proof that it isn't working.

Posted by: Eric Bergen at December 7, 2007 11:25 AM

Hi Zack,

Interesting article. Since XAware just moved to open source, we are hoping to get many from our community opening bugs. We had an advantage being a commercial company first.
1. The software was vigorously tested with a large internal team.
2. Our automation suite was very robust before moving to OSS.

I have created a “How we do it” blog if anyone is interested.


http://www.xaware.org/component/option,com_myblog/show,Software-Quality-Assurance-How-do-we-do-it-.html/task,userblog/Itemid,54/


Jeff Peters
www.xaware.org >

Posted by: Jeff Peters at December 12, 2007 12:23 PM

Microsoft Mini Spotlight
  • Get Started
  • Port 25 Blogs
  • OSS News
  • Join a Project

{Open Source} Heroes Happen Here

Start today and order your own Hero Hack Pack which includes Getting Started with Open Source, Windows Server 2008 and Visual Studio 2008 Trial. Each pack is a chance to win a free pass to OSCON 2008.







Technology White Papers

 

InfoWorld Technology Marketplace

» Technology White Papers Library

Technology White Papers by Topic

Technology White Papers E-mail Alert

Receive instant email notification when resources on this topic become available.
 
» BUY A LINK NOW

Sponsored Technology Links