SLIDESHOW

Slideshow: Inside Facebook's lab where it tests 2,000 phones at once

Facebook built special racks just to test its software on different handsets and make sure new code doesn't slow down your phone

20160713 facebook prineville data center 2
Credit: Facebook
Facebook can test its code on 2,000 phones at once

Facebook makes thousands of changes in its code every week. Any one of them could accidentally cause Facebook software to take up more data, memory or battery life on your phone. So the company tests code on more than 2,000 phones to account for different hardware models, operating systems and network connections.

20160713 facebook prineville mobile testing sled
Credit: Facebook
Starting small

At first, Facebook engineers would just test one phone at a time at their desks. To speed things up, the company built the "sled," a tray that could hold several phones for testing all at once. But using a metal tray, and sliding it into a metal rack, affected the phones' Wi-Fi connections.

20160713 facebook prineville mobile testing gondola
Credit: Facebook
Plastic worked better

Next, the company built a rack called the "gondola," which was plastic so it wouldn't interfere with Wi-Fi. It could hold 100 phones. But the USB wires attached to the phones got tangled.

20160713 facebook prineville mobile testing slatwall
Credit: Facebook
Going even bigger

Next came the "slatwall," which could hold 240 devices. Wanting to test 2,000 phones at once would have required nine rooms like this at Facebook's Menlo Park, California, headquarters, and there wasn't room. So they moved the operation up to the company's Prineville, Oregon, data center.

20160713 facebook prineville mobile testing rack
Credit: Facebook
Isolation chamber

Finally, the company needed to isolate each rack of phones from the others so their Wi-Fi networks didn't interfere with each other. This was necessary to create a consistent Wi-Fi environment for repeatable tests. Facebook built the chambers with insulation, copper tape, and a power filter. Each rack can hold 32 phones, plus computers that drive the phones to install, test, and uninstall applications. For iPhones, Facebook uses eight Mac Minis, and for Android phones, it uses four Open Compute Project Leopard servers.

20160713 facebook prineville mobile testing device lab
Credit: Facebook
Remote-control testing

There are about 60 of these racks in the Prineville testing center. Test engineers can watch the screens of the phones through cameras mounted inside the racks. Part of the testing is also automated, and Facebook is adding more automation. The company is now working to fit 64 phones in each rack and to open-source the design. Another challenge is to fit larger phones into the racks.