
How Google Tests Software

Every project at Google has a primary design doc. It is a living document, which means that it evolves alongside the project it describes. In its earliest form, a design doc describes the project’s objective, background, proposed team members, and proposed designs. During the early phase, the team works together to fill in the remaining relevant se
... See moreJason Arbon • How Google Tests Software
Manifestations of this blending of development and testing are inseparable from the Google development mindset, from code review notes asking “where are your tests?” to posters in the bathrooms reminding developers about best-testing practices.
Jason Arbon • How Google Tests Software
The simple solution to this conundrum is to stop treating development and test as separate disciplines. Testing and development go hand in hand.
Jason Arbon • How Google Tests Software
Recording technology converts manual tests to automated tests, with point-and-click validation of content and positioning, to be re-executed build after build to ensure minimal regressions, and to keep manual testers always focusing on new issues.
Jason Arbon • How Google Tests Software
We also automate the submission of bug reports and the routing of manual testing tasks.7 For example, if an automated test breaks, the system determines the last code change that is the most likely culprit, sends email to its authors, and files a bug automatically. The ongoing effort to automate to within the “last inch of the human mind” is curren
... See moreJason Arbon • How Google Tests Software
crawl, walk, run approach gives us the chance to run tests and experiment on our applications early and obtain feedback from real human beings in addition to all the automation
Jason Arbon • How Google Tests Software
Google tries hard to develop only products that users will find compelling and to get new features out to users as early as possible so they might benefit from them. Plus, we avoid over-investing in features no user wants because we learn this early.
Jason Arbon • How Google Tests Software
Google SWEs are feature developers. Google SETs are test developers. Google TEs are user developers.
Jason Arbon • How Google Tests Software
Testers are essentially on loan to the product teams and are free to raise quality concerns and ask questions about functional areas that are missing tests or that exhibit unacceptable bug rates. Because we don’t report to the product teams, we can’t simply be told to get with the program. Our priorities are our own and they never waiver from relia
... See more