Почему автотесты не всегда окупаются

Автоматизация тестирования — это абонемент в спортзал в январе. Кажется, что теперь всё точно пойдёт по плану и к весне ты готов. Сказка про: баги исчезнут, релизы станут ежедневными, QA засияет, как новогодняя гирлянда на демо.

Но через месяц-два выясняется, что: баги остались (привет, прод), автотесты не запускаются (ну, CI упал, бывает), ручные тесты никто не отменял (и Настя/Костя снова проверяет весь регресс перед релизом с кругами под глазами и ведром кофе).

🔸 Так в чём подвох? И почему автоматизация — это не всегда выгода?

Ну, во-первых, потому что это не бесплатно. Даже если вы уже за неё заплатили

Когда к нам приходит клиент и говорит: «Ребята, хотим всё автоматизировать!», мы спрашиваем: «А зачем?» Да-да, то же самое, что и при запросе на юзабилити-тестирование, о котором совсем недавно писали в блоге. Но фокус в том, что и тут тоже мы получаем не всегда продуманные и обоснованные ответы. Самые популярные варианты: «Ну, чтобы побыстрее протестировалось!» «Чтобы регресс не делать руками!» «Чтоб как у больших компаний!»

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

Любим вспоминать кейс, когда у одного клиента из банковской сферы были автотесты. Много. Кроссбраузер, логика, бизнес-флоу — красиво. Начальство было радо сообщать клиентам и партнерам, что у них "все автоматизировано" {как будто ручное тестирование - это стыдно?}. Но при этом они постоянно проседали по времени, 40% которого QA-команда тратила на поддержку самих тестов. Почему? Потому что UI менялся каждую неделю, а архитектура тестов просто не выдержала реалий.

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

Или вот гемблинг-кейс. Крупный оператор. Сценарии — сложные, куча данных, разные роли пользователей, проверки по временным интервалам, награда в зависимости от ставки и часа. Внедрена автоматизация, «чтобы по моде». Через три месяца отключили. Почему? Потому что ни один автотест не мог корректно эмулировать поведение реального игрока. Ручное тестирование с чек-листом от аналитика оказалось надёжнее.

Почему автотесты не всегда окупаются

🔸 Когда автоматизация не окупается

Давайте честно. Если вы запускаетесь редко, каждый спринт меняете фичи, не уверены, кто будет чинить автотесты, не понимаете, сколько времени/денег сейчас уходит на регресс, то автоматизация, скорее всего, принесёт больше головной боли, чем пользы. Особенно если вы всё ещё на стадии «что бы нам такого протестировать».

🔸 Когда автоматизация — друг, а не черная дыра бюджета

Есть моменты, когда она действительно работает. Не потому что модно, а потому что выгода очевидна: у вас стабильный функционал, и его надо гонять каждый релиз; у вас много данных и сценариев, которые ручками не протолкнуть; вы живёте по принципу CI/CD и не хотите, чтобы в релизе вылез клоун (или баг); у вас есть внятная стратегия — что именно автоматизируем, зачем, кто запускает и поддерживает. Всё. Больше поводов не нужно. Если вы себя узнали — автоматизация может сэкономить вам время, нервы и репутацию перед бизнесом.

📈 Хочешь понять, нужна ли тебе автоматизация?

Ответь сам себе на 3 вопроса:

  1. Как часто ты выпускаешь продукт? — Если раз в два месяца и вручную всё проверяется за час — живи спокойно.
  2. Сколько времени тратится на регресс? — Если QA уходит в запой после каждого релиза (в смысле, в отпуск от усталости) — пора подумать.
  3. Где ты хочешь быть через полгода? — Если с теми же багами и тем же циклом регрессии — ручное тестирование не подведёт. Если с короткими релизами и уверенностью в качестве — добро пожаловать в мир автоматизации. Только без фанатизма.

И в завершение — без морали

Автоматизация — инструмент. Полезный, если использовать по назначению. Опасный, если бросаться на него без стратегии и расчётов. Иногда автотесты — это инвестиция. А иногда — просто красиво оформленная трата времени. Полезно иногда порассуждать. Особенно, если это помогает не сливать бюджеты на красивое, но бесполезное.

1