Как тестируют в Google
Реклама. ООО «ЛитРес», ИНН: 7719571260.
Оглавление
Джефф Каролло. Как тестируют в Google
Предисловие к русскому изданию
Вступление от Альберто Савоя
Вступление от Патрика Коупленда
Предисловие
Об иллюстрациях
Пара слов о книге
Благодарности
Об авторах
Глава 1. Первое знакомство с организацией тестирования в Google
Качество ≠ Тестирование
Роли
Организационная структура
Ползти, идти, бежать
Виды тестов
Глава 2. Разработчик в тестировании
Жизнь разработчика в тестировании
Как организованы процессы разработки и тестирования
Кто такие разработчики в тестировании на самом деле?
Ранняя стадия проекта
Структура команды
Проектная документация
Интерфейсы и протоколы
Планирование автоматизации
Тестируемость
Пример работы разработчика в тестировании
Выполнение тестов
Определения размеров тестов
Как мы используем размеры тестов в общей инфраструктуре
Преимущества разных размеров тестов
Большие тесты
Средние тесты
Малые тесты
Требования к выполнению тестов
Тест-сертификация
Интервью с основателями программы тест-сертификации
Как мы собеседуем на позицию разработчиков в тестировании
Интервью с разработчиком инструментов Тедом Мао
Интервью с создателем WebDriver Саймоном Стюартом
Глава 3. Кто такой инженер по тестированию
Тестирование, обращенное к пользователю
Инженер по тестированию
Планирование тестирования
A – значит Attribute
C – значит Component
C – значит Capability
Риск
Анализ рисков
Снижение рисков
Напоследок о рисках
Пишем тест-кейсы
Интересные факты из жизни багов
Немного подробнее о Buganizer
Как мы нанимаем инженеров по тестированию
Собеседование с инженерами по тестированию
Управление тестированием в Google
Тестирование в режиме сопровождения
Эксперимент с Quality Bots
Эксперимент BITE
Регистрируем баги с BITE
Просмотр багов в BITE
Запись и воспроизведение сценариев в BITE
Ручные и исследовательские тесты в BITE
Уровни BITE
Google Test Analytics
Бесплатное тестирование
Внешние тестировщики
Интервью с инженером по тестированию Google Docs Линдси Уэбстер
Интервью с инженером по тестированию YouTube Эппл Чоу
Глава 4. Тест-менеджер
Кто такой тест-менеджер
Жонглирование людьми и дирижирование проектами
Влияние
Интервью с Анкитом Мехтой, тест-менеджером Gmail
Интервью с Хуном Даном, тест-менеджером Android
Интервью с Джоэлом Хиноски, тест-менеджером Chrome
Директор по тестированию
Интервью с Шелтоном Маром, директором по тестированию проектов Search и Geo
Интервью с директором разработки инженерных инструментов Ашишем Кумаром
Интервью с Суджаем Сани, директором по тестированию в индийском Google
Интервью с тест-менеджером Брэдом Грином
Интервью с Джеймсом Уиттакером
Глава 5. Как мы улучшали тестирование в Google
Роковые ошибки в процессе тестирования Google
Будущее разработчика в тестировании
Куда движется роль инженера по тестированию
Что станет с тест-директором и тест-менеджером
Будущее инфраструктуры тестирования
В завершение
Приложение А. Тест-план для Chrome OS
Обзор тем
Анализ рисков
Непрерывное тестирование каждой сборки
Ежедневное тестирование лучших сборок
Тестирование перед выпуском
Ручное и автоматизированное тестирование
Разработка и качество тестов
Каналы выпуска
Обратная связь
Репозитории тест-кейсов
Панели мониторинга тестов
Виртуализация
Производительность
Нагрузочное тестирование, продолжительное тестирование и тестирование стабильности
Фреймворк выполнения тестов Autotest
Производители железа
Лаборатория проверки оборудования
Фермы для сквозных автотестов
Тестирование AppManager в браузере
Тестируемость браузера
Оборудование
График
Ключевые моменты тестирования
Необходимые документы и ресурсы
Приложение Б. Тестовые туры для Chrome
Тур покупателя
Тур студента
Рекомендуемые области для тестирования
Тур международных звонков
Рекомендуемые области для тестирования
Тур ориентиров
Рекомендуемые ориентиры для Chrome
Тур «не спим всю ночь»
Рекомендуемые области для тестирования
Тур предпринимателя
Инструменты в Chrome
Тур неблагополучных районов
Неблагополучные районы в Chrome OS
Тур персонализации
Способы настройки Chrome
Приложение В. Посты из блога об инструментах и коде
Охотимся на баги и потерянное время вместе с BITE
QualityBots идет в атаку
RPF: Record Playback Framework
Google Test Analytics – теперь с открытым кодом
Полнота
Скорость
Действенность
Польза
Отрывок из книги
Я пришла в тестирование в 2006 году маленьким тестировщиком на большой аутсорсный проект. Сначала я научилась тестировать, заводить баги и общаться с разработчиками и менеджерами. Со временем я стала писать тесты, научилась планировать и управлять тестированием. У меня появилась своя команда.
И чем дальше, тем больше мне становилось понятно, что тестировщики только находят проблемы, но не могут их исправить. Они не могут сделать так, чтобы проблема больше не повторилась. И я чувствовала, что тестирование может приносить больше пользы.
.....
Наша концепция «Тест-сертификации» делала успехи (вы прочитаете про нее дальше в книге). Мы общались с командами разработчиков и помогали улучшить чистоту кода и внедрить юнит-тестирование на ранней стадии. Мы разрабатывали инструменты и обучали команды основам непрерывной интеграции, чтобы наши продукты всегда были готовы к тестированию. Бесчисленные мелкие усовершенствования и приемы, многие из которых описаны в книге, развеяли скептицизм. Тем не менее чего-то не хватало. Разработка все еще была разработкой, а тестирование так и оставалось тестированием. Все ингредиенты для изменения культуры присутствовали, но нам был нужен катализатор, который смог бы запустить объединение дисциплин.
Глядя на организацию, которая выросла из моей идеи о привлечении разработчиков на позиции тестирования, я понял, что тестирование было лишь частью нашей работы. У нас были команды, которые создавали все инструменты – от репозиториев исходного кода до инфраструктуры для багтрекинговой системы. Среди нас были инженеры по тестированию, инженеры по выпуску продуктов, разработчики инструментов и консультанты. Меня поражало, как сильно тот аспект нашей работы, который не являлся непосредственно тестированием, влиял на производительность. Возможно, наша команда называлась «службой тестирования», но наши обязанности были намного шире.
.....
Пользователь
Полезная и легко читаемая книга об автоматизированном тестировании в Google
Книга представляет собой компиляцию множества интервью и сообщений в блогах, посвящённую подходам к тестированию ПО в Google. Из изложенных в книге идей можно выделить следующие:Автоматизируйте всё, что подлежит автоматизации.Не молитесь на программу-методику испытаний, она – фальшивая библия тестировщикаТестировщик и программист – по сути, одна и та же специальность, требующая постоянной работы с кодомВ книге описано очень интересных технологий, в частности, описан BITE – встроенный в Chrome компонент помогающий сформировать обращение в bugtracking-систему. Из не имеющей непосредственного к теме книги, но занятной информации, я бы отметил описание роли и места Индии (Хайдарабада) в успехе Google. Так же пикантным моментом, связанным с автором книги является факт его ухода из Google в 2012 году (вернулся в Microsoft) из-за конфликта с руководством по поводу Google+.Я бы рекомендовал эту книгу как обязательную к прочтению всем, кто серьёзно озабочен проблемой обеспечения качества программного обеспечения. Лично меня эта книга вдохновила на автоматизацию тестирования ПО с использованием Python в нашей компании.