How Google Tests Software

James Whittaker of Google

James Whittaker of Google

Last week I attended a fantastic and fascinating QASIG talk by James Whittaker of Google. The talk was about how test engineering is done at Google, but it really wasn’t about testing at all. It was about quality. As James points out, people care about quality. They don’t really care about testing. James listed 10 things that Google does to dramatically increase quality, and few of them are what we would call testing. James laid out a vision of where computing is going, and where Google already is. The tools he describes are all open sourced, by Google. At the moment, they are all aimed at web apps, but Google is seriously looking at the Android market as well for these system interventions. You can see the talk here:

Certainly, not everyone can use the approaches that Google is using, especially if they have legacy architectures that are not amenable to those types of approaches. But lots of startups could use these approaches. I bet lots of other organizations are using similar approaches. It’s about scalability. When you are releasing a new version of a web application every day, or multiple times a day, and that application is used by hundreds of millions of people, you need to reduce the number of bugs that get released to near zero and very rapidly roll back when you do find any bugs. This is what Google does. His book is available online here: How Google Tests Software book – it’s not out in print yet, but available in Safari Rough Cuts in eBook form.

James mentioned that Google uses uTest, crowd sourced testing startup, instead of dedicated testers, for some of their projects – a fantastic idea. James also talked about a bunch of Open Source software from Google in the talk:

About davidsocha

In autumn 2010 after spending 19 years working in a variety of software organizations as a programmer, architect, manager, teacher, ScrumMaster, product designer, change agent, and agile coach, I finally listened to what everyone had been telling me I should be doing and joined the University of Washington Bothell as an Assistant Professor in Computing & Software Systems. My interests are how to create and maintain great teams, particularly those in software development organizations. I am most interested in distinctions that dramatically increase the effectiveness of teams, such as systems thinking, design thinking, biomimicry, and human centered design. I am a pragmatist, a collaborator, and an optimist.
This entry was posted in Design, Software. Bookmark the permalink.

One Response to How Google Tests Software

  1. Pingback: elantroide | Pearltrees

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s