← назад к разделу

Спринт идёт девятый день из десяти. Восемь дней проверять было нечего, а сегодня три задачи приехали разом — и завтра обзор. Что-то вы посмотрите бегло, что-то не успеете, и часть работы уедет в следующий спринт вместе с вопросом, который стоило задать в первый день.

Так выглядит спринт, в котором тестировщик ждёт готовое. Большинство команд работают по Agile: продукт делают короткими циклами, маленькими кусочками, а самая распространённая разновидность подхода — Scrum. В коротком цикле ждать нельзя: тестирование идёт вместе с разработкой, с первого дня.

один спринт, 10 дней: разработка одна и та же, работа тестировщика — разная 1 2 3 4 5 6 7 8 9 10 разработка F1 корзина F2 оплата F3 промокод правки тестировщик рядом вопросы к задаче кейсы F1 дефекты данные F2 повтор F3, регресс тестировщик ждёт готовое жду, пока всё сделают всё сразу не влезло → следующий спринт вопрос по требованию — день 1ответ пришёл в тот же день тот же вопрос — день 9переделка не влезла в спринт

Рамка — текущий день спринта. Дорожка разработки сверху одна и та же в обоих случаях, отличается работа тестировщика. В средней дорожке проверка идёт следом за готовностью: F1 проверили на четвёртый день, на пятый разобрали дефекты, на шестой подготовили данные для следующей задачи, на восьмой перепроверили починенное, на девятый-десятый приняли F3 и прогнали регресс. В нижней восемь дней проверять нечего, а на девятый всё приезжает разом — и часть работы уезжает за границу спринта вместе с вопросом, который стоило задать в первый день.

Спринт и бэклог

Работа в Scrum разбита на спринты — короткие отрезки, обычно одна-две недели. За спринт команда берёт небольшой набор задач и доводит их до готовности.

Откуда берутся задачи: есть бэклог — общий список всего, что нужно сделать в продукте, отсортированный по важности. На спринт из верхушки бэклога выбирают то, что успеют. Задачи часто описывают как пользовательские истории (user story) — коротко, от лица пользователя: «Как покупатель, я хочу оплатить заказ картой, чтобы не платить наличными».

Ключевая идея: за один спринт задача проходит весь путь — от обсуждения до готовности, включая проверку. Не «в этом спринте пишем, в следующем тестируем».

Церемонии Scrum и ваша роль в них

В Scrum есть несколько регулярных встреч («церемоний»). На каждой у тестировщика своя роль:

  • Разбор бэклога (refinement). Команда заранее разбирает задачи будущих спринтов: уточняет формулировки, режет крупное на части. Ваши вопросы здесь стоят дешевле всего: кода ещё нет.
  • Планирование (planning). В начале спринта команда решает, что берёт в работу. Ваша задача — прикинуть, что и как будете тестировать и что успеете; неясности в требованиях чаще всего вскрываются здесь.
  • Дейли (daily, летучка). Короткая ежедневная встреча «что делал, что буду, что мешает». Вы говорите, что тестируете, где ждёте починок, что вас останавливает.
  • Обзор (review, демо). В конце спринта показывают, что сделали. Вы уже проверили это к моменту показа — на демо не должно всплывать сюрпризов.
  • Ретроспектива (retro). Команда обсуждает, что в процессе шло хорошо, а что улучшить. Тестировщик поднимает проблемы качества: например, «задачи приходят на тест в последний день, не успеваем».

Почему тестирование идёт вместе с разработкой

В старом подходе (waterfall) тестирование стояло в конце, отдельным этапом; в коротком цикле так не выходит, и работа размазана по всему спринту:

  • В начале вы разбираете задачи и задаёте вопросы (баги в требованиях ловятся тут).
  • Пока разработчик пишет код, вы готовите тест-кейсы и данные.
  • Как только функция готова — сразу проверяете, не дожидаясь конца спринта.
  • Ближе к концу — регресс: не сломало ли новое старое.

Важное следствие: тестировщик и разработчик — партнёры, работающие бок о бок, а не «конвейер», где один сдал, другой принял.

Definition of Done — когда задача готова

Полезное понятие — Definition of Done (DoD), «определение готовности». Это общий для команды чек-лист, при каком условии задачу можно считать завершённой. Обычно туда входит и «протестировано»: например, «код написан, ревью пройдено, тесты пройдены, багов с высоким приоритетом нет».

Для тестировщика DoD — это защита: задача не «готова», пока не проверена.

Где теряется спринт

  • Ждут, пока «всё сделают», и получают всю работу в последний день — это нижняя дорожка на рисунке.
  • Молчат на встречах. Планирование и дейли — место, где задают вопросы и говорят, что остановило работу; молчание откладывает проблему на потом.
  • Считают разработчика противником. Вы делаете общее дело; баг — это не обвинение, а совместная находка.

Коротко

  • Спринт — короткий отрезок (одна-две недели), за который задача проходит весь путь до готовности, включая проверку.
  • Тестирование не стоит в конце: вопросы к задаче до кода, кейсы и данные пока код пишут, проверка сразу после готовности функции, регресс перед обзором.
  • Вопрос по требованию, заданный на разборе бэклога или планировании, стоит разговора; он же на девятый день стоит переделки, которая в спринт не влезет.
  • На каждой встрече у тестировщика есть что сказать: на планировании — вопросы и объём, на дейли — что мешает, на ретро — проблемы качества.
  • Definition of Done — общий чек-лист готовности: пока «протестировано» в нём есть, непроверенное не уедет в выпуск.
  • К обзору всё уже проверено, поэтому на демо не бывает сюрпризов.

Что почитать дальше