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

Тут можно читать онлайн Уиттакер . - Как тестируют в Google - бесплатно полную версию книги (целиком) без сокращений. Жанр: Прочая старинная литература, издательство Издательский дом Питер, год 2014. Здесь Вы можете читать полную версию (весь текст) онлайн без регистрации и SMS на сайте лучшей интернет библиотеки ЛибКинг или прочесть краткое содержание (суть), предисловие и аннотацию. Так же сможете купить и скачать торрент в электронном формате fb2, найти и слушать аудиокнигу на русском языке или узнать сколько частей в серии и всего страниц в публикации. Читателям доступно смотреть обложку, картинки, описание и отзывы (комментарии) о произведении.

Уиттакер . - Как тестируют в Google краткое содержание

Как тестируют в Google - описание и краткое содержание, автор Уиттакер ., читайте бесплатно онлайн на сайте электронной библиотеки LibKing.Ru

Как тестируют в Google - читать онлайн бесплатно полную версию (весь текст целиком)

Как тестируют в Google - читать книгу онлайн бесплатно, автор Уиттакер .
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Рис 212 Бейджи тестсертификации показываются на викистраницах проектов Мы - фото 15

Рис. 2.12. Бейджи тест-сертификации показываются на вики-страницах проектов

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

Краткое описание уровней Тест-сертификации

Уровень 1

— Создать пакеты тестового покрытия.

— Установить систему непрерывной сборки.

— Ранжировать тесты на малые, средние и большие.

— Определить недетерминированные тесты.

— Создать набор смоук-тестов.

Уровень 2

— Не выпускать, пока не пройдут все тесты.

— Обязательно выполнять смоук-тесты до отправки кода.

— Инкрементальное покрытие всеми тестами не меньше 50%.

— Инкрементальное покрытие малыми тестами не меньше 10%.

— Хотя бы одна фича покрыта интеграционным тестом.

Уровень 3

— Создавать тесты для всех нетривиальных изменений

— Общее покрытие малыми тестами не меньше 50%.

— Важные новые фичи покрыты интеграционными тестами.

Уровень 4

— Смоук-тесты запускаются автоматически перед отправкой нового кода.

— Смоук-тесты проходят за время меньше 30 минут.

— Нет недетерминированных тестов.

— Общее тестовое покрытие не меньше 40%.

— Тестовое покрытие только малыми тестами не меньше 25%.

— Все важные фичи покрыты интеграционными тестами.

Уровень 5

— Добавить тест к исправлению всех нетривиальных багов.

— Активно использовать доступные средства анализа.

— Общее тестовое покрытие не меньше 60%.

— Тестовое покрытие только малыми тестами не меньше 40%.

Сначала мы обкатали программу на нескольких командах разработчиков, которые и так были позитивно настроены по отношению к тестированию. Они хотели улучшить свои навыки. Когда мы сбалансировали механизм наград, мы объявили открытым большое соревнование за бейджи по всей компании. Наша программа была принята на ура.

Продать нашу идею оказалось не так сложно, как казалось. Команды разработки только выигрывали от этого:

— Они получали поддержку от опытных тестировщиков, которые согласились стать наставниками тест-сертификации. Ресурсы тестирования всегда в дефиците, а присоединившись к программе, команда получала больше тестировщиков, чем ей было положено официально.

— Они получали помощь экспертов и учились лучше писать малые тесты.

— Они видели, какие команды лучше проводят тестирование, и понимали, у кого стоило учиться.

— Они могли похвастаться перед другими командами своим уровнем тест-сертификации.

Вся компания могла следить, как команды разработки зарабатывают уровни.

Руководители разработки успешных команд получали хорошие отзывы от руководителей направления продуктивности разработки. Команды, которые выражали скептицизм и подтрунивали над участвующими, на самом деле рисковали. Если ресурсы тестирования так сложно получить, зачем лишний раз разочаровывать ребят из направления продуктивности? Конечно, не все шло гладко. Дадим слово людям, которые руководили этой программой.

Интервью с основателями программы тест-сертификации

Марк Стрибек — руководитель разработки Gmail. Нил Норвиц — разработчик, занимающийся инструментами ускорения разработки. Трэйси Бялик и Расс Руфер — разработчики в тестировании, одни из лучших инженеров Google. Эти четверо помогали запустить программу тест-сертификации.

Расскажите, с чего началась тест-сертификация? Какие проблемы коман­да пыталась решить при запуске? Совпадают ли они с теми, которые вы решаете сегодня?

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

Программа тест-сертификации помогает спланировать совершенствование тестирования по шагам. На первом уровне мы формируем основу: настраиваем фреймворк для запуска автотестов и собираем данные о тестовом покрытии, выявляем недетерминированные тесты и создаем пакет смоук-тестов, если полный тестовый пакет выполняется долго.

Постепенно уровни усложняются, требуя все большей прокачки в тестировании. На втором уровне нужно определяться со стратегией и начинать улучшать инкрементальное покрытие. Третий уровень направлен на тестирование нового кода. На четвертом уровне тестируется старый код, который раньше не тестировался. Может быть, придется провести рефакторинг, чтобы код стал тестируемым. На пятом уровне уже нужно иметь хорошее общее покрытие, писать тесты для всех исправленных багов и использовать средства для статического и динамического анализа.

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

— Как оценивали разработчики тест-сертификацию на старте?

Нил: Они считали, что программа чересчур сложна, а наши цели завышены, ведь многим командам нужно было еще добраться даже до начальной стадии. Мы должны были настроить уровни так, чтобы на их достижение у людей было время. Кроме того, инструментарий Google тогда был недоработан и некоторые наши требования превосходили возможности. Людям было трудно влиться в процесс, поэтому нам пришлось подумать о том, как смягчить требования на старте и убедить команды в том, что они действительно продвигаются вперед.

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

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать


Уиттакер . читать все книги автора по порядку

Уиттакер . - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки LibKing.




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


Отзывы читателей о книге Как тестируют в Google, автор: Уиттакер .. Читайте комментарии и мнения людей о произведении.


Понравилась книга? Поделитесь впечатлениями - оставьте Ваш отзыв или расскажите друзьям

Напишите свой комментарий
x