Inside Facebook’s mobile device testing lab

Facebook has opened up about its mobile device testing process, at the social network’s Prineville, Oregon, data centre.

In a recent blog post, Facebook production engineer Antoine Reversat, explained how the company built up the lab in order to accommodate up to 2000 mobile devices.

“[2000 is] our target number based on several factors, including the number of commits per week, the number of iterations needed per test to get statistically significant results, etc.” Reversat said.

Building a mobile device testing lab

Beginning last year, Facebook at first built a CT-Scan service that monitors and predicts the consequences of code changes. However, this initial approach didn’t scale to enough devices.

Engineers decided not to use a simulator approach, choosing to test code changes on actual devices for greater accuracy.

Managing the high volume of devices that needed to be tested involved issues, including making sure wi-fi would work properly with each device, a consistent environment, as well as coping with short USB cables.

Before reaching the final custom-built ‘rack’ solution, engineers experimented with different set-ups including a a ‘sled’ design, then the ‘gondola’ design, then a ‘slatwall.’

Facebook's custom-built mobile device testing rack. (© Facebook)
Facebook’s custom-built mobile device testing rack. (© Facebook)

Open source mentality

Facebook is planning to densify the current rack design in order to double the amount of devices it holds. It is also planning to give back to the developer and testing community, through opening up its designs.

“We hope through our open-sourcing both the hardware design of our mobile device testing rack and the Chef recipes written to control the phones, others can benefit from our learnings and contribute their own ideas to our designs,” Reversat wrote.

Edited from source by Cecilia Rehn.