Что должен уметь специалист по тестированию и как им стать
Если коротко сформулировать основную задачу специалиста по тестированию, то она заключается в том, чтобы проверять работу программного обеспечения на соответствие требованиям и фиксировать баги. В идеале реальные результаты работы программы (сайта, сервиса, приложения) должны совпадать с ожидаемыми. Если этого не происходит, задача тестировщика — выявить, где и что идет не так, и донести эту информацию до разработчиков, чтобы проблема была устранена. То есть глобально тестировщики отвечают за обеспечение качества работы ПО.
Как строится карьера в тестировании
Начальная ступень этой карьерной лестницы — ручное тестирование. Такие специалисты в буквальном смысле работают руками и глазами. Например, если заказчик хочет, чтобы кнопка была красной, а на сайте она почему-то зеленая, то это баг, который тестировщик должен «отловить». Считается, что профессия тестировщика отличается невысоким порогом вхождения в ИТ (по сравнению с программированием), поэтому тестирование вполне уместно рассматривать как возможность для начала работы в сфере ИТ.
Если у тестировщика появляется желание автоматизировать свою работу, он может развиваться в автотестировании. Но для этого уже требуется как минимум знание какого-нибудь языка программирования, на котором человек будет писать автотесты. Поэтому и зарплаты в этой сфере заметно выше. Если специалист по ручному тестированию без опыта может претендовать на ₽60–80 тыс. в месяц, с опытом 1–1,5 года — до ₽150 тыс., то специалисты по автоматизированному тестированию со знанием языков программирования могут зарабатывать в разы больше.
Тестировщики могут развиваться как горизонтально, так и вертикально. А еще есть те, кому просто нравится ручное тестирование — и они занимаются всегда только им. Некоторые тестировщики со временем меняют работу внутри ИТ-индустрии и становятся программистами или аналитиками. Те, у кого развиты гибкие навыки, могут переквалифицироваться в продакт- и проджект-менеджеров или в тимлидов. Вариантов развития карьеры — масса. Так что тестирование действительно может стать хорошим стартом в ИТ.
Каким должен быть хороший тестировщик
В каждой компании свои критерии оценки работы специалистов по тестированию. Один из самых распространенных подходов — оценка доли багов, обнаруженных после релиза продукта, в общем количестве багов. Ведь в идеальном мире 100% проблем должны выявлять тестировщики.
Говоря о том, что нужно человеку, чтобы быть хорошим тестировщиком, нельзя недооценивать гибкие навыки. Более того, иногда они бывают важнее, чем профессиональные компетенции.
Личные качества
Адекватность. Специалист по тестированию должен адекватно оценивать реальность и себя в ней, реагировать на критику и понимать, что он сделает в следующий раз, чтобы снова не допустить ту или иную ошибку.
Внимательность. Тестировщику нужно быть внимательным, чтобы не пропустить критичный баг, который негативно повлияет на пользовательский опыт и, как следствие, на репутацию и финансовую успешность продукта.
Коммуникабельность. Не стоит думать, что тестировщик — это человек, который сидит в уголочке и жмет на кнопочки. В действительности эти специалисты общаются с огромным количеством коллег: с разработчиками, менеджерами, специалистами технической поддержки. Поэтому они должны уметь как минимум понятно выражать свои мысли, а в идеале еще и находить общий язык и выстраивать хорошие отношения с разными людьми, то есть обладать развитыми коммуникативными навыками.
Стрессоустойчивость. Последнее, но не по важности. Чтобы не впадать в панику от каждого пропущенного бага, а вместо этого анализировать свои ошибки и не допускать их в дальнейшем. В случае с найденными багами тоже нужно не паниковать, а спокойно собрать «доказательства» (сделать скриншот, записать видео, приложить логи) — и уже с ними идти к разработчикам.
Профессиональные навыки
Среди технических навыков тестировщика можно выделить (хотя бы поверхностное) знание одного или нескольких языков программирования, умение работать с базами данных и с консолью. Еще пригодятся базовое понимание клиент-серверной архитектуры, умение тестировать API и пользоваться снифферами (анализаторами) трафика. Это сильно упростит взаимодействие с разработчиками и рабочий процесс в целом.
Помимо этого, желающим стать тестировщиками нелишним будет погрузиться в теорию тестирования — изучить его виды, техники тест-дизайна, типы тестовой документации и другие аспекты. Об этом часто спрашивают на собеседованиях.
Кому тестирование не подходит
О работе специалистов по тестированию есть такое красивое высказывание: для тестировщика не должно быть ничего важнее, чем счастье пользователя. Звучит несколько высокопарно, но, если вдуматься, так и есть. В конечном итоге все, что делает тестировщик, он делает для того, чтобы был доволен конечный пользователь.
Что может стать результатом пренебрежительного отношения к аудитории продукта и к своим обязанностям? Пользователи недовольны, сайт упал, компания за сутки потеряла несколько миллионов рублей. И значительная доля ответственности за этот грустный сценарий будет лежать именно на тестировщике. Поэтому эта работа точно не для тех, кто не готов брать на себя ответственность.
Как и где учиться
На уровне вузов в нашей стране пока нет программ подготовки специалистов по тестированию. Но у тех, кто хочет войти в эту сферу, большой выбор курсов от разных платформ, которые помогут получить необходимые знания и навыки. У «VK Образования», например, есть бесплатные курсы для студентов старших курсов российских вузов.
Большой плюс тестирования в том, что для освоения его базовых инструментов не понадобится много времени. Эта сфера открыта не только для студентов и выпускников, но и для профессионалов, которые хотят сменить профиль. Например, я до работы в ИТ занимала должность специалиста по таможенному оформлению, а потом перешла в тестирование и со временем стала тимлидом. Конечно, на первом этапе нужно быть готовым к некоторому падению уровня доходов, но оно будет временным и не должно останавливать тех, кто по-настоящему хочет начать карьеру в тестировании или в сфере ИТ в целом.
При выборе курсов стоит отдать предпочтение тем, в которых теория сочетается с практикой, а преподаватели не просто дают задания, но и проверяют их и помогают студентам самостоятельно дойти до правильного решения (это можно узнать, например, из отзывов тех, кто учится или закончил обучение).
Советы новичкам
- Расширяйте кругозор: тестировщик должен знать всего понемногу из разных областей ИТ, а при необходимости — уметь копнуть глубже.
- Не бойтесь: у многих людей до вас получилось построить успешную карьеру в тестировании — и у вас получится.
- Не теряйте мотивацию: учитесь регулярно — неважно, на курсах или самостоятельно.
- Осваивайте инструменты для тестирования: те же снифферы трафика можно установить на свой компьютер и посмотреть, как они работают.