Читаем Как тестируют в Google полностью

Эппл: «Денежный тур» с фокусом на фичи, связанные с деньгами (для YouTube это Ads и другие части, завязанные на партнеров), конечно, играл важную роль в каждом выпуске. «Тур по достопримечательностям» с фокусом на важнейшие функции системы. «Тур по неблагополучному району» с фокусом на области, в которых раньше находили баги, и области, к которым относились последние баг-репорты. Эти три оказались самыми эффективными в выявлении багов. Невероятно полезным оказалось рассмотреть заведенные друг другом баги и обсудить, как мы их искали. Концепция туров помогла нам выстроить стратегию исследовательского тестирования. Мы постоянно подшучивали над «антисоциальным туром» (ввод наименее вероятных данных при каждом удобном случае), «туром навязчивого невроза» (повторение одного действия) и «ленивым туром» (ввод минимума входных данных и выбор значений по умолчанию везде, где только можно). Туры не только помогли нам направлять наше тестирование, но и сплотили команду.

— Насколько мы знаем, вы много тестируете YouTube с помощью Selenium. Что тебе нравится и не нравится в автоматизации с использованием Selenium?

Эппл: Нравится простота API, то, что можно писать код тестов на любимом языке программирования, будь то Python, Java или Ruby, возможность прямого вызова кода JavaScript из приложения — потрясающая, суперполезная функция.

Не нравится то, что технология так и осталась браузерным тестированием. Она медленно работает, нужно встраивать точки входа в API, а тесты работают далеко от тестируемого кода. Selenium помогает при автоматизации сценариев, которые человеку особенно трудно проверять, например при вызовах к рекламной подсистеме. У нас есть тесты, которые запускают видеоролики и перехватывают вызовы Ad с помощью Banana Proxy (внутренняя программа проверки безопасности веб-приложений, которая логирует запросы и ответы HTTP). В двух словах: мы перехватываем запросы из браузера и направляем их на Banana Proxy, который их логирует и передает в Selenium. Так мы можем убедиться в том, что исходящие запросы содержат правильные URL-параметры, а содержимое входящих ответов соответствует ожиданиям. Тесты пользовательского интерфейса работают медленно, менее надежны и дороже в сопровождении. Мы пришли к выводу, что следует оставить несколько больших высокоуровневых смоук-тестов для проверки сквозных интеграционных сценариев, а остальные тесты должны быть как можно меньшего размера.

— Большая часть контента и пользовательский интерфейс YouTube работают на Flash. Как вы это тестируете? У вас есть волшебные приемы, позволяющие делать это через Selenium?

Эппл: Никакой магии, к сожалению. Если не считать огромное количество проделанной работы волшебством. Наши JavaScript API торчат наружу, и мы можем использовать Selenium для их тестирования. Еще есть программа определения различий pdiff, которая помогает в тестировании отображения превью, определения границ экрана и прочего. Мы делаем серьезную промежуточную обработку потока HTTP для прослушивания трафика, чтобы больше знать об изменениях на странице. Фреймворки As3Unit и FlexUnit помогают нам проверять различные состояния приложения и сравнивать графические изображения. Я бы хотела назвать это магией, но чтобы все это стало реальным, написано очень много кода.

— Какой самый серьезный баг нашла и не пустила к пользователям твоя команда?

Эппл: Самые серьезные баги обычно не так интересны. Был забавный баг в CSS, из-за которого браузер IE вылетал. До этого мы еще никогда не видели, чтобы баги CSS приводили к аварийному завершению браузера.

Нам запомнился один коварный баг, который поймали во время запуска новой страницы просмотра в 2010 году. Когда пользователь в IE7 выводил курсор за пределы области воспроизведения, проигрыватель через какое-то время зависал. Это интересный случай, потому что пользователи столкнулись бы с этим, только если бы долго смотрели один видеоролик и двигали курсором. Тогда все постепенно начинало тормозить, пока проигрыватель не зависал окончательно. Оказалось, что проблемы возникали из-за обработчиков событий и ресурсов, которые не освобождались, многократно выполняя одни и те же вычисления. Если пользователь смотрел короткие ролики или сидел спокойно и не двигал мышкой, баг не проявлялся.

— Расскажи о самом успешным и самом неуспешном моментах тестирования YouTube.

Перейти на страницу:

Похожие книги

Оптимизация BIOS. Полный справочник по всем параметрам BIOS и их настройкам
Оптимизация BIOS. Полный справочник по всем параметрам BIOS и их настройкам

Прочтя эту книгу, вы узнаете, что представляет собой BIOS, какие типы BIOS существуют, как получить доступ к BIOS и обновлять ее. Кроме того, в издании рассказано о неполадках в работе BIOS, которые приводят, например, к тому, что ваш компьютер не загружается, или к возникновению ошибок в BIOS. Что делать в этот случае? Как устранить проблему? В книге рассказывается об этом и даже приводится описание загрузки BIOS во флэш-память.Также вы научитесь использовать различные функции BIOS, узнаете, как оптимизировать их с целью улучшения производительности и надежности системы. Вы поймете, почему рекомендуемые установки являются оптимальными.После прочтения книги вы сможете оптимизировать BIOS не хуже профессионала!Книга предназначена для всех пользователей компьютера – как начинающих, которые хотят научиться правильно и грамотно настроить свою машину, используя возможности BIOS, так и профессионалов, для которых книга окажется полезным справочником по всему многообразию настроек BIOS. Перевод: А. Осипов

Адриан Вонг

Зарубежная компьютерная, околокомпьютерная литература / Программирование / Книги по IT
Работа на ноутбуке
Работа на ноутбуке

Вы собираетесь приобрести ноутбук или только что купили его? Причем для вас это первый компьютер? Тогда данная книга – то, что вам нужно. Прочитав ее, вы узнаете, как правильно выбрать ноутбук. Вы застрахуете себя от покупки бракованного товара и не потеряете деньги, приобретя компьютер по завышенной цене. В книге рассказано о типах современных ноутбуков, об их возможностях, а также о расширении потенциала компьютера за счет подключаемых устройств и аксессуаров. Автор описывает такие важнейшие моменты, как установка операционной системы и работа в ней, интеграция ноутбука в локальную сеть и подключение к Интернету с помощью беспроводных технологий, использование различных программ и обеспечение безопасности. Видеокурс, который прилагается к книге, сделает вашу работу на ноутбуке гораздо эффективнее.

Алексей Садовский

Зарубежная компьютерная, околокомпьютерная литература / Прочая компьютерная литература / Книги по IT