Keynote
summary
Claim: testing increases velocity if execution is precise and cheap. Bazel models builds as action graphs, runs only affected nodes, and classifies tests into hermetic deterministic actions versus flaky ones. Remote execution and caching cut a TensorFlow clean build from minutes on one machine to thousands of parallel actions in the cloud, exemplified by 500-way parallel execution and a run that finishes 8536 of 8537 actions. Shared remote cache shared across users avoids redundant work.
AI-written summary · about
chapters (17)
- 0:00Introduction
- 1:08Testing matters to Google
- 3:39Testing ambitions vs reality
- 5:05Testing trade-off dilemma
- 7:37Dependencies complicate testing
- 9:01Continuous integration practices
- 11:05Basil enables automated testing
- 13:54Basil’s test automation principles
- 16:41Optimizing test execution
- 17:45Reliable versus unreliable tests
- 18:29Reproducible test environments
- 19:56Distributing tests and caching
- 21:22Shifting tests left
- 23:27Fast and developer-friendly testing
- 24:32Future testing challenges
- 25:15Demo: Speeding up builds
- 33:21Remote builds and Basil
related talks
10m{ Fast, Cost-effective } – Choose Two
06mLightning Talk: Do You Love or Hate Your C++ Build System?
50mBuilding on Key – Keeping your Actions and Remote Executions in Tune + Q&A
11mAction Deduplication: Faster and Cheaper Remote Builds Without Lifting a Finger
13mKeynote: Debugging in Prod Without (Lots Of) Pain
01h 31mBazel
20mKeynote
59mCI Best Practices for iOS & macOS App Development
