Как социальная сеть Facebook тестирует мобильное приложение?

logo

Если при словосочетании «тестирование мобильного приложения» вы представляете душный офис с волосатыми и бородатыми парнями, которые усердно что-то нажимают на своих планшетах и смартфонах, то вы ошибаетесь. По крайней мере, в самой популярной социальной сети Facebook всё выглядит совершенно иначе.

Перед тем, как начать стоит заметить, что каждый, даже самый мало-мальски опытный разработчик, будь то front-end девелопер или проектировщик интерфейсов для интернет-магазина, должен понимать, что валидный код — это, во-первых, возросшая производительность и скорость открытия сайта. Во-вторых, верно скомпонованная страница будет иметь успех в продвижении сайтов — это очень любят поисковые алгоритмы поисковых машин.

Для тестирования мобильного приложения инженерам отведен целый центр обработки данных, который расположен в городе Прайнвилл, штат Орегон. Целых 60 серверных стоек — в каждой из них по 32 смартфона с запущенным мобильным приложением Facebook. Сделано это для того, чтобы понять как и какие изменения в коде влияют на производительность на телефонах и, как это ни странно, на срок службы батареи. В Facebook данную конструкцию называют «Мобильной лабораторией устройств». Тестирует данная конфигурация не только новые или 2-3 годовалые телефоны. Старые модели тоже участвуют в тесте — далеко не на всех рынках используются последние iPhone. В Индии, например, очень много пользователей выходят в сеть через совсем древние устройства.

1st_edit2

За крупным металлическим заслоном в каждой стойке открывается удивительная, но закономерная, по сути,  картина — множество различных моделей телефонов, где можно встретить даже, если не раритетный, то уже точно вышедший в тираж iPhone 4. Все смартфоны находятся в процессе «чтения» ньюсфида, тем самым собирая данные для тестирования. По самым скромным подсчетам в руках разработчиков около 2000 телефонов, которые могут подсказать о деградации производительности после нововведений в коде в целом, либо ухудшение коснется только каких-либо старых моделей.

Facebook обслуживает 1,65 млрд пользователей по всему миру и, конечно, моментально реагирует на каждое изменение в основных мобильных операционных системах. Начальная конфигурация для тестирования далека от той, что мы видим сейчас, но и это — не окончательный вариант. Планируется множество улучшений по программной и аппаратной части. В частности, количество телефонов в стойке хотят увеличить до 64 штук.

[su_quote]Подобного масштаба инфраструктура для тестирования есть не только у Facebook. Еще в 2014 году Google приобрела мобильный тестер Appurify (на данный момент — облачный сервис) который используется для удаленной проверки приложения на множестве android-устройств для последующей публикации в Google Play.[/su_quote]

2nd

В серверной используется восемь Mac Minis для iOS  и четыре OCP сервера Leopard Linux на базе Android . Каждый из серверов подключается к одинаковому числу iPhone и Android смартфонам. Каждая стойка имеет свою собственную сеть Wi-Fi и камеру, которая может записать всю активность на дисплее телефона и передать удаленно для диагностики каждого этапа — сборки, установки, испытания приложения.

Когда разработчик вносит изменения — строится новая версия приложения. Затем она устанавливается здесь на одном из устройств и изменения проверяются на предмет ухудшения работоспособности называемым регрессионным анализом. Инженеры Facebook уверены, что даже мельчайшие изменения в коде могут привести к непредсказуемым результатам — даже в потребление энергии батареи может намного измениться. В общем, есть над чем работать.

Комментарии:

Добавить комментарий

Scroll Up