Есть ли будущее у функционального тестировщика?
Тестировщик, как бы это странно ни звучало, одна из самых древних профессий в жизни человечества. Древнее даже сами знаете чего 😉 Ведь по своей сути тестирование — это процесс анализа и проверки чего-либо. Именно благодаря этому процессу, человек начал изучать и исследовать наш удивительный мир. Но на этом мы не остановились, а начали использовать полученную информацию, для того чтобы сделать свою жизнь лучше и проще. Так мы с вами и докатились до 21-го века и эры информационных технологий.
Тестирование в контексте программного обеспечения.
Тестирование ПО появилось в тот же момент, когда было разработано первое программное обеспечение (в середине 20-го века). С тех пор процесс тестирования ПО прошёл несколько стадий эволюции:
- Показать, что продукт выполняет заявленные требования;
- Помимо этого, найти у продукта изъяны и попробовать сломать его;
- Начать тестировать не только продукт, но и все артефакты проекта (требования, дизайны и т.д.) на ранних этапах. Ведь исправить ошибку в требованиях проще, чем баг в коде;
- Делать так, чтобы дефекты не появлялись даже на ранних этапах продукта.
Собственно первые 3 этапа эволюции и сформировали современное понятие тестирования ПО. А последний вылился в отдельное направление, которое называется Quality Assurance (Обеспечение качества).
Тестирование ПО — это процесс анализа продукта и всех сопутствующих ему артефактов с целью нахождения несоответствий и ошибок, а так же предоставления информации, необходимой для оценки текущего качества продукта.
То есть, тестирование — это не только нахождение ошибок в продукте, но ещё и проверка того, что требования и всё, что сделано до запущенной программы составлено правильно, и что наш продукт этим требованиям соответствует.
Чем занимается тестировщик?
На первый взгляд может показаться, что тестировщик занимается только поиском багов в продукте и его артефактах (требованиях, дизайнах и т.д.). Но на самом деле это не совсем так.
В любом случае тестирование — это комплексный процесс, который состоит из следующих фаз:
- Планирование и контроль тестирования;
- Анализ тестовых условий и создание тестов;
- Организация написанных тестов и их прохождение;
- Завершение тестирования и создание отчётности.
Соответственно, на каждом из этапов тестировщик выполняет определённый набор активностей. Более подробно с ними можно познакомиться в статье Фундаментальный процесс тестирования.
Кроме этого, работа тестировщика разбавляется различными коммуникациями и техническими задачами.
Обычный день тестировщика можно представить примерно так:
- 10:00 — Утренний кофе
- 10:20 — Чтение писем и ответы на них
- 11:00 — Работа с документацией
- 12:00 — Ежедневный статус митинг
- 12:30 — Настройка окружения
- 13:00 — Обед
- 14:00 — Тестирование
- 17:30 — Коммуникация с командой
- 18.00 — Анализ проделанной и планирование последующей работы
- 18:30 — Составление отчёта
В результате этого мы и получаем на столько интересную и разнообразную работу.
Куда может расти специалист по тестированию?
Как и специалисты в других IT направлениях, тестировщик может расти от Junior до Chief специалиста.
Но на самом деле крайне низкий процент людей доходит до позиции Chief. Это происходит не из-за того, что на этот уровень почти невозможно попасть.
Причина тому — это лёгкий переход из инженеров по тестированию в другие направления.
В результате уже на позиции Middle или Senior тестировщик начинает искать себя. Кто-то остаётся в направлении инженеров по тестированию и растёт дальше до позиции Lead и Chief. А кто-то выбирает для себя что-то другое. Тестирование замечательно тем, что оно теснее всех связано со всеми процессами жизненного цикла ПО. По этой причине у специалистов данного направления могут быть хорошие карьерные перспективы.
Чаще всего специалисты по тестированию углубляются либо в узкое направление тестирования (автоматизация тестирования, тестирование безопасности, производительности и тд.), либо в управление и работу с людьми.
По правде говоря, из тестировщиков получаются отменные управленцы и менеджеры.
В этом направлении возможны следующие варианты развития карьеры:
- Test Management — управление тестированием на проектах;
- Project\Delivery — управление проектами;
- Resource\Group Management — управление людьми в рамках компании;
- Team Leading — управление людьми в рамках проектной команды;
- Mentorship\Training — обучение людей.
Помимо вышеперечисленного, тестировщики довольно часто уходят в разработку или бизнес-анализ.
Как выглядит тестировщик будущего?
Мы с вами живём в век стартапов и Agile процессов. Следовательно, чтобы быть конкурентными нам, специалистам по тестированию нужно тоже быть «гибкими».
По этой причине сейчас на рынке очень востребованы «Mixed» специалисты. Такие, как тестировщики\автоматизаторы, тестировщики\бизнес-аналитики, тестировщики\менеджеры и т.д. Чем больше бизнес задач вы сможете выполнять, тем ценнее вы будете как специалист.
Говоря о будущем, сразу же хочется затронуть тему автоматизации тестирования. Да, мир движется в сторону тотальной автоматизации. Но это совсем не значит, что ручные тестировщики перестанут существовать. Всё равно нужны будут люди, которые будут продумывать сценарии тестирования.
К счастью, сейчас уже существуют и продолжают развиваться множество средств автоматизации, которые не требуют знания кода. Таким образом, даже начинающие функциональные тестировщики без сильных технических навыков в состоянии освоить создание автоматизированных тестов.
Будущее тестирования и автоматизации выглядит примерно так:
- Автоматизатор — создаёт средства\тулы\фреймворки с помощью которых создаются автотесты;
- Тестировщик — помимо основных своих активностей, создаёт автотесты при помощи уже готовых средств автоматизации.
Вывод:
Отвечая на вопрос «Есть ли будущее у функционального тестировщика?», говорю однозначно «да». Мир никуда не денется от тестирования. Информационные системы становятся всё более комплексными, что вызывает необходимость в качественном тестировании. Автоматизация ещё не скоро полностью заменит ручной труд тестировщика. А когда это случится, она наверняка уже будет очень простой и доступной для любого человека 🙂