A really good read on how Facebook squared the (UI) testing circle for native iOS apps.

The article is a couple of years old now but the bottom nav that this testing settled on is still in use.

Facebook had moved their apps to HTML5 to allow fast testing and updates but according to Mark Zuckerberg “Our biggest mistake as a company…was betting too much on HTML5″.

The HTML5 version of Facebook was a hog but the iOS monthly app update cycle was a test killing frustration.

The thing that get’s me is the simplicity of the solution…

So over the past year Facebook quietly built out a new native mobile app testing framework and sprung it into action in March to build the app update released today.

How it works is that when you download Facebook for iOS, the app actually contains multiple different versions of the interface. However, you’re grouped with a few hundred thousand other users and you all only see one version of the app. This way Facebook can try out tons of variations all at once, without multiple app updates or any confusion for users. We’ve all been Guinea pigs in the mobile testing framework since March, but none of us knew it.