Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
How Google Tests Software
Search
Rex Chung
March 30, 2013
Technology
680
5
Share
How Google Tests Software
Summary of learnings from the book.
Rex Chung
March 30, 2013
Other Decks in Technology
See All in Technology
Introduction to Sansan for Engineers / エンジニア向け会社紹介
sansan33
PRO
6
74k
2026年、知っておくべき最新 サーバレスTips10選/serverless-10-tips
slsops
12
4.9k
こんなアーキテクチャ図はいやだ / Anti-pattern in AWS Architecture Diagrams
naospon
1
390
"SQLは書けません"から始まる データドリブン
kubell_hr
2
450
LLM時代の検索アーキテクチャと技術的意思決定
shibuiwilliam
2
430
システムは「動く」だけでは足りない 実装編 - 非機能要件・分散システム・トレードオフをコードで見る
nwiizo
4
400
MLOps導入のための組織作りの第一歩
akasan
0
270
DevOpsDays Tokyo 2026 軽量な仕様書と新たなDORA AI ケイパビリティで実現する、動くソフトウェアを中心とした開発ライフサイクル / DevOpsDays Tokyo 2026
n11sh1
0
140
AIペネトレーションテスト・ セキュリティ検証「AgenticSec」ご紹介資料
laysakura
0
3k
レビューしきれない?それは「全て人力でのレビュー」だからではないでしょうか
amixedcolor
0
110
NgRx SignalStore: The Power of Extensibility
rainerhahnekamp
0
230
AI駆動1on1〜AIに自分を育ててもらう〜
yoshiakiyasuda
0
110
Featured
See All Featured
Automating Front-end Workflow
addyosmani
1370
200k
A better future with KSS
kneath
240
18k
jQuery: Nuts, Bolts and Bling
dougneiner
66
8.4k
Leo the Paperboy
mayatellez
7
1.6k
Between Models and Reality
mayunak
3
260
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
160
Scaling GitHub
holman
464
140k
Optimizing for Happiness
mojombo
378
71k
GraphQLの誤解/rethinking-graphql
sonatard
75
12k
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
400
BBQ
matthewcrist
89
10k
Docker and Python
trallard
47
3.8k
Transcript
HOW GOOGLE TESTS SOFTWARE
OVERVIEW 1. Ideologies 2. Roles 3. Methodologies 4. Types of
tests 5. Tools 6. Roles for us.
IDEOLOGIES Entire team is responsible for quality.
IDEOLOGIES Entire team is responsible for quality. Google engineers prefer
quality over features.
IDEOLOGIES Entire team is responsible for quality. Google engineers prefer
quality over features. Optimize for both quality and speed.
IDEOLOGIES Entire team is responsible for quality. Google engineers prefer
quality over features. Optimize for both quality and speed. Quality != Test
IDEOLOGIES Entire team is responsible for quality. Google engineers prefer
quality over features. Optimize for both quality and speed. Quality != Test Quality is not important until the software is important
ROLES Engineering Productivity Team Software Engineer Software Engineer in Test
Test Engineer Test Director
ENGINEERING PRODUCTIVITY "overcome bias against testing and a company culture
that favored heroic effort over engineering rigor."
SOFTWARE ENGINEER fault tolerant designs failure recovery TDD unit tests
SET Review designs Check code quality and risk Refactor code
to make it more testable. Write testing frameworks and automation.
TE User focused Product experts Quality advisers and analyzers of
risk. Write automation scripts. Coordinate with contract testers, dogfooders and beta users etc.
METHODOLOGIES Make testing a feature Centers around Code Review Single
Repository CI with submit queue Test suite - Parallel on single machine.
TYPES OF TESTS Small Medium Large (Enormous)
SMALL All mocked, no http or database calls Ideally 100ms
< 1 min 70%
MEDIUM Database, localhost calls Ideally 1 sec < 5 mins
20%
LARGE Allowed to call external service Focus on user's expectation
< 1hr 10%
TOOLS Test Analytics ACC (Attribute Component Capability) Google Test Case
Manager Manual test cases, Exploratory testing Buganizer Triage, accountability, reports, search before filing Record Playback Framework record and generate selenium tests.
TEST ANALYTICS
BUGS Severity: how much it affects functionality. Priority: how soon
it should be fixed.
ROLES FOR US SWE == SET Team Lead =~ TE
(Test Engineering Designer) Devops = Engineer Productivity + Tooling
TE DESIGNER Test design and coordination Identify resources required for
testing.
ENCOURAGE TESTING OKRs Certification program (test coverage, test speeds, 0
flaky tests, automated smoke test etc).
NEXT Things we can do to improve quality More resources
http://googletesting.blogspot.com/