"A Unit Test Would Have Caught This:" Small, Cheap, and Effective Testing for Production Engineers

Tuesday, May 23, 2017 - 2:00pm2:25pm

Andrew Ryan, Facebook Inc.

Note: This talk ends at 2:25 pm.


Production Engineers write tons of code for automating and managing distributed systems, ranging from one-off shell scripts to complex frameworks of many thousands of lines. But, in our profession, formal software testing has historically been weak. While there are a wide variety of ways to test software, in this talk, we'll focus on the methods that are easiest to implement and give the best results.

We'll discuss how teams use "small and cheap" tests at Facebook to give us the largest quality improvements with the lowest effort. Examples will include projects written in Bash and Python, as well as our Chef code, which is written in Ruby. We'll also discuss some of the ancillary benefits of testing, including recruiting, training, and team continuity.

Andrew Ryan, Facebook, Inc.

Andrew has been a member of Facebook's Production Engineering team since 2009. He currently works as a member of the Traffic Infrastructure team, helping to make Facebook faster for everyone.

Open Access Media

USENIX is committed to Open Access to the research presented at our events. Papers and proceedings are freely available to everyone once the event begins. Any video, audio, and/or slides that are posted after the event are also free and open to everyone. Support USENIX and our commitment to Open Access.

@conference {202765,
author = {Andrew Ryan},
title = {"A Unit Test Would Have Caught {This:}" Small, Cheap, and Effective Testing for Production Engineers},
year = {2017},
publisher = {USENIX Association},
month = may

Presentation Video 

Presentation Audio