Testing Blog

How Google Tests Software - A Brief Interlude

Tuesday, February 22, 2011
Share on Twitter Share on Facebook
Google
Labels: James Whittaker

10 comments :

  1. MeghaFebruary 22, 2011 at 4:08:00 PM PST

    Sure James. Thanks.

    By any chance will you be covering the topic - What Google really looks for, when hiring testers?

    ReplyDelete
    Replies
      Reply
  2. GengodoFebruary 23, 2011 at 4:42:00 AM PST

    Since I had the honor of having my last, deliberately dramatic, comment included in this post I feel I should make some sort of reply.

    First of all I am glad that you took the opportunity to clarify the newfound direction of the testing strategy over at Google, it obviously works well for you. I am also happy to see you confess that this direction leads to the conclusion that devs actually can test, and succeed in doing so. You have to understand my confusion since it kind of has been your M.O. to argue the exact opposite.

    Having said that, I have given this some thought and I think can actually agree on that what we see here is progress. Although in my, admittedly not very long, career as a Test Engineer I’ve met many devs who I would never want to see as testers, they simply care too little. So I guess one of the challenges would be to structure an organization so that devs actually do care. Which is precisely what you have been describing in your posts. But, and here comes a little confession from me as well, testers must also be proficient at coding stuff. And to be honest, that is what scares me. I didn’t sign up for that. But I’m learning more and more and I think it can be quite fun some times (definitely not all the time.) Heck, I don’t know, perhaps the future for testers in this new way of thinking is bright after all, as long as one keeps it in mind from the start and managers hire testers with documented coding knowledge. People on every level of an organization have to understand and embrace these changes if they are going to be implemented successfully.

    Lastly, I would like to add that I have never “hated” developers in the true sense of the word. (They give me work, right?) The importance of having a team where all members strive towards the same goal, which is to make a good product, is undoubted. I’ve never deviated from that conviction. It’s just that in some cases it takes superior intrapersonal skills to also convince the devs ;)

    I’m looking forward to the continuation of these posts, which I will follow with interest, fear, confusion and contemplativeness.

    Peace

    ReplyDelete
    Replies
      Reply
  3. Raj AhujaFebruary 23, 2011 at 10:56:00 AM PST

    Hi,

    Reading your blogposts gives me an impression that it's not long when we hear of a book titled "How we test software at Google" coming from you.

    Should you decide to write one or are in the process I may want to book a copy in advance. Thanks :-)

    Raj Ahuja

    ReplyDelete
    Replies
      Reply
  4. DaveFebruary 24, 2011 at 6:20:00 AM PST

    Great set of posts, looking forward to more.

    I would be interested to know how you incorporate requirements into testing. We all know that poor requirements leads to poor products, but we've found here, that scripting the tests leads us to improving the requirements dramatically (filling in the gaps, adding clarification).

    Also, I see in your post that it seems that TE's can pull the cord (to stop the train, so to speak?) I like that concept but do your TEs have that independence? Here, testing reports into Development so there is a real sense of lack of independence. In your grid reporting structure, do your TEs and SETs have that independence?

    What level of experience are the SETs and do you cycle SWE and SETs?

    You should probably hire Maggi - you can't train passion.

    ReplyDelete
    Replies
      Reply
  5. Alvin LinFebruary 25, 2011 at 7:03:00 PM PST

    I think a good tester is who can be converted into developer at anytime and vice-versa.

    After all I think Software Engineer and Software Engineer In Test are just one good programmer wearing different hats.

    Glad to see Google are blending testers and developers!

    ReplyDelete
    Replies
      Reply
  6. LuisaFebruary 27, 2011 at 10:47:00 AM PST

    I'm really surprised with the comments about your posts. When I read the last posts I thought I couldn't agree more about you.

    To me a good day is when I found a bug after some hard working hours. This means Developers worked well. Sometimes our Developers ask us for help on their own tests.

    Quality doesn't belong to Testers. Quality belongs to all involved in a product development. And when everyone starts thinking this way we got more Quality.

    I'm sure that Google is a wonderful place to work as a Tester.

    ReplyDelete
    Replies
      Reply
  7. the IT GumbyMarch 1, 2011 at 2:22:00 PM PST

    My two cents: when dev can "throw code over the wall" to test - they have no incentive for quality. Their deliverable is functionality delivered to QA. QA's deliverable becomes Quality, but this is impossible to "test quality in" to the product. So you get a broken system and hostile environment.

    When development is responsible for their own testing, suddenly they have an incentive for quality. If QA is embedded with the developers, the developers can ask QA to help them improve their testing (and in turn, their quality).

    ReplyDelete
    Replies
      Reply
  8. bbjoonyMarch 2, 2011 at 10:12:00 PM PST

    Hi james.

    Your interesting articles let me make a decision that translate your article into korean and post on my blog to spread your article. Also, I know that it needs your permission. I promiss it will be strictly informational, not a commercial purposes.

    As like meggi said, Google is a nice place to testers in korea too, so many people in korea would have interest with your articles. Please, Let them have a chance to access your article more easily.

    I ‘m looking forward your positive reply.
    Thanks.

    PS> If you mind leaving your comment here, please e-mail me to: bbjoony@gmail.com
    Thanks.

    ReplyDelete
    Replies
      Reply
  9. MenoMarch 4, 2011 at 5:20:00 PM PST

    Great post. I am a developer but I want to learn more and more about testing. I do have one question that I would like to see what everyone's opinion on is. I seem to read alot about how I can write "better" code my making it more testable. While I agree to some degree I don't think that by just having a more testable code base for example the quality of the design of that code is necessarily increased. What do you think?

    ReplyDelete
    Replies
      Reply
  10. TsellsMarch 9, 2011 at 10:01:00 AM PST

    I am one of the few who transitioned through the ranks of software development. I started in support, moved to QA, and then to Development. I will say that I was a better tester before I moved to development. Now when testing others items I find myself thinking along the testing lines of how I would have coded it . This can be limiting. However - I think it's a bonus when I am coding as I think about the what if's and what the user can do versus what the user will do.

    ReplyDelete
    Replies
      Reply
Add comment
Load more...

The comments you read and contribute here belong only to the person who posted them. We reserve the right to remove off-topic comments.

  

Labels


  • TotT 104
  • GTAC 61
  • James Whittaker 42
  • Misko Hevery 32
  • Code Health 31
  • Anthony Vallone 27
  • Patrick Copeland 23
  • Jobs 18
  • Andrew Trenk 13
  • C++ 11
  • Patrik Höglund 8
  • JavaScript 7
  • Allen Hutchison 6
  • George Pirocanac 6
  • Zhanyong Wan 6
  • Harry Robinson 5
  • Java 5
  • Julian Harty 5
  • Adam Bender 4
  • Alberto Savoia 4
  • Ben Yu 4
  • Erik Kuefler 4
  • Philip Zembrod 4
  • Shyam Seshadri 4
  • Chrome 3
  • Dillon Bly 3
  • John Thomas 3
  • Lesley Katzen 3
  • Marc Kaplan 3
  • Markus Clermont 3
  • Max Kanat-Alexander 3
  • Sonal Shah 3
  • APIs 2
  • Abhishek Arya 2
  • Alan Myrvold 2
  • Alek Icev 2
  • Android 2
  • April Fools 2
  • Chaitali Narla 2
  • Chris Lewis 2
  • Chrome OS 2
  • Diego Salas 2
  • Dori Reuveni 2
  • Jason Arbon 2
  • Jochen Wuttke 2
  • Kostya Serebryany 2
  • Marc Eaddy 2
  • Marko Ivanković 2
  • Mobile 2
  • Oliver Chang 2
  • Simon Stewart 2
  • Stefan Kennedy 2
  • Test Flakiness 2
  • Titus Winters 2
  • Tony Voellm 2
  • WebRTC 2
  • Yiming Sun 2
  • Yvette Nameth 2
  • Zuri Kemp 2
  • Aaron Jacobs 1
  • Adam Porter 1
  • Adam Raider 1
  • Adel Saoud 1
  • Alan Faulkner 1
  • Alex Eagle 1
  • Amy Fu 1
  • Anantha Keesara 1
  • Antoine Picard 1
  • App Engine 1
  • Ari Shamash 1
  • Arif Sukoco 1
  • Benjamin Pick 1
  • Bob Nystrom 1
  • Bruce Leban 1
  • Carlos Arguelles 1
  • Carlos Israel Ortiz García 1
  • Cathal Weakliam 1
  • Christopher Semturs 1
  • Clay Murphy 1
  • Dagang Wei 1
  • Dan Maksimovich 1
  • Dan Shi 1
  • Dan Willemsen 1
  • Dave Chen 1
  • Dave Gladfelter 1
  • David Bendory 1
  • David Mandelberg 1
  • Derek Snyder 1
  • Diego Cavalcanti 1
  • Dmitry Vyukov 1
  • Eduardo Bravo Ortiz 1
  • Ekaterina Kamenskaya 1
  • Elliott Karpilovsky 1
  • Elliotte Rusty Harold 1
  • Espresso 1
  • Felipe Sodré 1
  • Francois Aube 1
  • Gene Volovich 1
  • Google+ 1
  • Goran Petrovic 1
  • Goranka Bjedov 1
  • Hank Duan 1
  • Havard Rast Blok 1
  • Hongfei Ding 1
  • Jason Elbaum 1
  • Jason Huggins 1
  • Jay Han 1
  • Jeff Hoy 1
  • Jeff Listfield 1
  • Jessica Tomechak 1
  • Jim Reardon 1
  • Joe Allan Muharsky 1
  • Joel Hynoski 1
  • John Micco 1
  • John Penix 1
  • Jonathan Rockway 1
  • Jonathan Velasquez 1
  • Josh Armour 1
  • Julie Ralph 1
  • Kai Kent 1
  • Kanu Tewary 1
  • Karin Lundberg 1
  • Kaue Silveira 1
  • Kevin Bourrillion 1
  • Kevin Graney 1
  • Kirkland 1
  • Kurt Alfred Kluever 1
  • Manjusha Parvathaneni 1
  • Marek Kiszkis 1
  • Marius Latinis 1
  • Mark Ivey 1
  • Mark Manley 1
  • Mark Striebeck 1
  • Matt Lowrie 1
  • Meredith Whittaker 1
  • Michael Bachman 1
  • Michael Klepikov 1
  • Mike Aizatsky 1
  • Mike Wacker 1
  • Mona El Mahdy 1
  • Noel Yap 1
  • Palak Bansal 1
  • Patricia Legaspi 1
  • Per Jacobsson 1
  • Peter Arrenbrecht 1
  • Peter Spragins 1
  • Phil Norman 1
  • Phil Rollet 1
  • Pooja Gupta 1
  • Project Showcase 1
  • Radoslav Vasilev 1
  • Rajat Dewan 1
  • Rajat Jain 1
  • Rich Martin 1
  • Richard Bustamante 1
  • Roshan Sembacuttiaratchy 1
  • Ruslan Khamitov 1
  • Sam Lee 1
  • Sean Jordan 1
  • Sebastian Dörner 1
  • Sharon Zhou 1
  • Shiva Garg 1
  • Siddartha Janga 1
  • Simran Basi 1
  • Stan Chan 1
  • Stephen Ng 1
  • Tejas Shah 1
  • Test Analytics 1
  • Test Engineer 1
  • Tim Lyakhovetskiy 1
  • Tom O'Neill 1
  • Vojta Jína 1
  • automation 1
  • dead code 1
  • iOS 1
  • mutation testing 1


Archive


  • ►  2025 (1)
    • ►  Jan (1)
  • ►  2024 (13)
    • ►  Dec (1)
    • ►  Oct (1)
    • ►  Sep (1)
    • ►  Aug (1)
    • ►  Jul (1)
    • ►  May (3)
    • ►  Apr (3)
    • ►  Mar (1)
    • ►  Feb (1)
  • ►  2023 (14)
    • ►  Dec (2)
    • ►  Nov (2)
    • ►  Oct (5)
    • ►  Sep (3)
    • ►  Aug (1)
    • ►  Apr (1)
  • ►  2022 (2)
    • ►  Feb (2)
  • ►  2021 (3)
    • ►  Jun (1)
    • ►  Apr (1)
    • ►  Mar (1)
  • ►  2020 (8)
    • ►  Dec (2)
    • ►  Nov (1)
    • ►  Oct (1)
    • ►  Aug (2)
    • ►  Jul (1)
    • ►  May (1)
  • ►  2019 (4)
    • ►  Dec (1)
    • ►  Nov (1)
    • ►  Jul (1)
    • ►  Jan (1)
  • ►  2018 (7)
    • ►  Nov (1)
    • ►  Sep (1)
    • ►  Jul (1)
    • ►  Jun (2)
    • ►  May (1)
    • ►  Feb (1)
  • ►  2017 (17)
    • ►  Dec (1)
    • ►  Nov (1)
    • ►  Oct (1)
    • ►  Sep (1)
    • ►  Aug (1)
    • ►  Jul (2)
    • ►  Jun (2)
    • ►  May (3)
    • ►  Apr (2)
    • ►  Feb (1)
    • ►  Jan (2)
  • ►  2016 (15)
    • ►  Dec (1)
    • ►  Nov (2)
    • ►  Oct (1)
    • ►  Sep (2)
    • ►  Aug (1)
    • ►  Jun (2)
    • ►  May (3)
    • ►  Apr (1)
    • ►  Mar (1)
    • ►  Feb (1)
  • ►  2015 (14)
    • ►  Dec (1)
    • ►  Nov (1)
    • ►  Oct (2)
    • ►  Aug (1)
    • ►  Jun (1)
    • ►  May (2)
    • ►  Apr (2)
    • ►  Mar (1)
    • ►  Feb (1)
    • ►  Jan (2)
  • ►  2014 (24)
    • ►  Dec (2)
    • ►  Nov (1)
    • ►  Oct (2)
    • ►  Sep (2)
    • ►  Aug (2)
    • ►  Jul (3)
    • ►  Jun (3)
    • ►  May (2)
    • ►  Apr (2)
    • ►  Mar (2)
    • ►  Feb (1)
    • ►  Jan (2)
  • ►  2013 (16)
    • ►  Dec (1)
    • ►  Nov (1)
    • ►  Oct (1)
    • ►  Aug (2)
    • ►  Jul (1)
    • ►  Jun (2)
    • ►  May (2)
    • ►  Apr (2)
    • ►  Mar (2)
    • ►  Jan (2)
  • ►  2012 (11)
    • ►  Dec (1)
    • ►  Nov (2)
    • ►  Oct (3)
    • ►  Sep (1)
    • ►  Aug (4)
  • ▼  2011 (39)
    • ►  Nov (2)
    • ►  Oct (5)
    • ►  Sep (2)
    • ►  Aug (4)
    • ►  Jul (2)
    • ►  Jun (5)
    • ►  May (4)
    • ►  Apr (3)
    • ►  Mar (4)
    • ▼  Feb (5)
      • This Code is CRAP
      • How Google Tests Software - A Brief Interlude
      • Who reads this blog?
      • How Google Tests Software - Part Three
      • How Google Tests Software - Part Two
    • ►  Jan (3)
  • ►  2010 (37)
    • ►  Dec (3)
    • ►  Nov (3)
    • ►  Oct (4)
    • ►  Sep (8)
    • ►  Aug (3)
    • ►  Jul (3)
    • ►  Jun (2)
    • ►  May (2)
    • ►  Apr (3)
    • ►  Mar (3)
    • ►  Feb (2)
    • ►  Jan (1)
  • ►  2009 (54)
    • ►  Dec (3)
    • ►  Nov (2)
    • ►  Oct (3)
    • ►  Sep (5)
    • ►  Aug (4)
    • ►  Jul (15)
    • ►  Jun (8)
    • ►  May (3)
    • ►  Apr (2)
    • ►  Feb (5)
    • ►  Jan (4)
  • ►  2008 (75)
    • ►  Dec (6)
    • ►  Nov (8)
    • ►  Oct (9)
    • ►  Sep (8)
    • ►  Aug (9)
    • ►  Jul (9)
    • ►  Jun (6)
    • ►  May (6)
    • ►  Apr (4)
    • ►  Mar (4)
    • ►  Feb (4)
    • ►  Jan (2)
  • ►  2007 (41)
    • ►  Oct (6)
    • ►  Sep (5)
    • ►  Aug (3)
    • ►  Jul (2)
    • ►  Jun (2)
    • ►  May (2)
    • ►  Apr (7)
    • ►  Mar (5)
    • ►  Feb (5)
    • ►  Jan (4)

Feed

  • Google
  • Privacy
  • Terms