Как тестируют в Google

Тестирование – это не обособленный процесс. Это неотъемлемая составляющая разработки ПО, которая отвечает за продуктивность и, в конечном итоге, качество разработки, утверждают авторы книги и рассказывают, каким образом этот подход реализован в Google. Книга адресована специалистам по тестированию, менеджерам софтверных компаний и непосредственно разработчикам-программистам.

На момент написания книги Джеймс Уиттакер был техническим директором Google и отвечал за тестирование Chrome, Maps и веб-приложений Google. Джейсон Арбон работал инженером по тестированию в Google, отвечал за Google Desktop, Chrome и Chrome OS. Джефф Каролло - разработчик в тестировании - занимался Google Voice, Toolbar, Chrome и Chrome OS. В 2010 году в качестве разработчика руководил разработкой Google+ API. Так что эти ребята знают, о чем говорят.

Развиваясь, Google менял подходы к тестированию. В результате вместо «службы тестирования» с минимальным штатом, появилось «направление продуктивности разработки», и в данном случае речь идет не о смене вывески, а об изменении подходов.

Основная мысль: тестирование – это не обособленный процесс. С плана тестирования, тест-кейсов, начинается разработка, тестированием сопровождается, и не заканчивается до тех пор, пока продукт есть на рынке. Сам стиль программирования в Google предполагает тестируемость. Такой подход породил и изменения в штатной структуре, и подход к найму людей в зависимости от специфики работы.

В структуре Google тестированием занимаются разработчики в тестировании, тестировщики, тест-менеджеры и инженеры по тестированию. У каждого – своя специфика, свое поле деятельности, которые отчасти пересекаются. В книге приведены варианты оценки людей на собеседовании: на примере решения конкретной задачи авторы показывают, каким образом в Google отбирают специалистов по тестированию, и чем именно психологически специалисты по тестированию отличаются от разработчиков.

Что приятно: рассказывая о своих методах работы, гуглеры не выдают их за истину в последней инстанции: отдельная глава «Как тестируют в Google» посвящена различным ошибками – как сугубо техническим, так и организационным.

Специалистов наверняка заинтересует подход Google к отлову багов. Google разрабатывает и использует три вида тестов - малые (или юнит-тесты), средние и большие (или гигантские). Есть репозиторий, в который вносятся обнаруженные ошибки, и в книге подробно описана его организация и система атрибуции. Но Google не стремиться сразу выдать идеальный код. Работает система оценки рисков: именно по ней принимаются решения, какие багги критичны, и их нужно устранять срочно, какие - могут подождать, а какие редки настолько, что заниматься их устранением просто невыгодно. Авторы сравнивают инструменты для автоматического тестирования, сравнивают области применимости его и ручного режимов, рассказывают о способах привлечения внешних тестировщиков.

Конкурентная среда диктует свои законы, и, если сосредоточиться на тестировании и устранении багов в новом продукте, потратить время, он может устареть еще до выхода на рынок. Поэтому компания все-таки выводит в свободное пользование не доведенные до совершенства продукты, прошедшие тестирование и устранение критических багов внутри Google. Тут в дело вступают ранние пользователи: именно они служат источником наиболее важной информации для Google, выявляя ошибки и сообщая о недостатках. Разумней сразу сделать доступным пользователям работоспособный продукт, и устранять ошибки по мере их обнаружения, считают в Google, совершенствовать его постоянными обновлениями, чем годами чистить код. Пример этого подхода – Gmail, которой находился в статусе бета-тестирования 4 года, уже насчитывая миллионы пользователей.

В приложениях книги приведены тест-план Chrome OS, тестовые туры для Chrome, посты из гугловского блога об инструментах и коде.

«Как тестируют в Google» была написана в 2011 году. Уже тогда авторы видели ряд проблем в сложившейся в компании системе тестирования и предрекали ее изменение. Однако идеи и подходы, описанные в книге, после адаптации могут быть использованы и сейчас.

Столбцы «Симулятора ставок» интегрировали в Отчёты Google AdWords

Разарботчики сервиса Google AdWords позволили клиентам сервиса добавлять столбцы «Симулятора ставок» в таблицу статистики на вкладке «Ключевые слова» для быстрого просмотра...

Facebook будет использовать собственный язык программирования - Hack

В конце прошлой недели разработчики социальной сети Facebook представили собственный язык программирования, созданный на базе классического PHP

Яндекс запускает новый сайт для иностранных рекламодателей

Яндекс запускает новый сайт, рассчитанный на иностранных рекламодателей

Яндекс о грядущих изменениях на своих сервисах

Компания Яндекс сообщила о предстоящих изменениях на своих сервисах, которые будут произведены в связи с изменившейся политической ситуацией

SimilarWeb PRO покажет переходы на сайт из поиска по ключевым словам

Сервис SimilarWeb PRO разработал инструмент, позволяющий владельцам ресурсов отслеживать запросы, по которым осуществляется переход пользователей на сайты из поиска

Advse.ru поможет найти своих конкурентов в поиске Яндекса и Google

Сервис конкурентной разведки Advse.ru пополнился новым полезным функционалом – статистикой результатов поиска в Яндексе и Coogle