~/talk

“All Your Tests are Terrible..."

Talkat CppCon 2015 · 2015-09-21..09-25· [testing, software-architecture]
links:none on file
name:H. Wright
links:none on file
slides:none on file

Google teams write roughly 100,000 C++ test binaries and common failures are concrete not abstract: tests must verify behavior, be readable, cover edge cases, show intended API use, and only fail for real regressions. Avoid flaky async waits, hidden setup, relying on private hooks or implementation ordering, comparing precomputed binaries byte for byte, or asserting mock internals. Require code review, make tests hermetic, synchronize or callback on async work, assert tolerances for golden outputs, and focus on correctness and resilience.

AI-written summary · about

  1. 0:00Introduction
  2. 1:07Goofus and Gallant
  3. 1:53Five properties of testing
  4. 3:58The first rule: write tests
  5. 4:48Correctness in testing
  6. 9:05Readability and structure
  7. 16:16Completeness and edge cases
  8. 21:01Demonstrability of APIs
  9. 23:08Resilience and avoiding flakes
  10. 29:01Brittle tests and golden files
  11. 33:19Avoiding brittle dependencies
  12. 41:57Summary and Q&A
  13. 44:15Advanced Testing Questions
  14. 50:00Flakiness and Culturing Tests
  15. 57:21Testing Policy and Conclusion
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.