Может ли компания обойтись без тестировщиков?

В данном вопросе я говорю именно о классических QA, занимающихся ручным тестированием. Ответ — однозначно да. Разумеется, как и у всего в этой жизни, у такого подхода есть своя цена. Давайте разберём, в чём она заключается.

Как я уже отметил, продукт вполне может существовать без ручных тестировщиков. Я выделил три ключевых критерия, при которых это возможно:

1. Высокая организованность команды. 2. Индивидуальная ответственность каждого члена команды, особенно разработчиков, и их высокая вовлечённость. 3. Высокий уровень автоматизации.

Конечно, можно назвать и другие факторы, но именно эти три кажутся мне наиболее важными.

Только хорошо организованная команда может выстроить процессы так, чтобы продукт содержал минимальное количество критических багов даже без отдельного этапа ручного тестирования. Это комплекс мер: глубокая проработка продуктовой и аналитической части, продуманная архитектура, чёткие соглашения, код-ревью и многое другое.

Индивидуальная ответственность проявляется в том, что каждый разработчик выполняет свою работу на все 100%, не добавляет хаоса в репозиторий, а поддерживает порядок. Когда классы и функции (или хотя бы их большая часть) покрыты тестами. Когда разработчик мыслит не шаблонно — «соответствует критериям приемки, значит, готово», — а учитывает возможные нестандартные сценарии, не описанные в документации. Когда он проводит полноценное dev-тестирование. Список можно продолжать, но на этом остановлюсь.

Высокий уровень автоматизации — здесь, думаю, всё очевидно. Если все процессы, от анализа кода до «выкатки» на прод, максимально автоматизированы, количество ошибок из-за человеческого фактора сводится к минимуму.

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

При этом направление QA не исчезает. Отделы обеспечения качества, департаменты тестирования, сервисные QA-команды и другие подобные структуры продолжают существовать, но глубже интегрируются в разработку, превращаясь в часть единого организма и решая сложные инженерные задачи.

Большинство же компаний сознательно выбирают путь посредственной разработки с контролирующим (так и хочется сказать — надзирающим) органом в лице тестировщиков, которые вручную проверяют плоды трудов коллег и выявляют тонны багов на каждом регрессе. Впрочем, если бизнес при этом остаётся прибыльным и не ставит амбициозных IT-целей, возможно, все эти «заморочки» ему и не нужны.