Доверяй и проверяй: чем занимаются QA-тестировщики и как стать одним из них
Зарплата, опыт, скиллы и подводные камни — рассказываем о самой популярной профессии в IT
Тестирование называют самой легкой точкой входа в IT. Правда ли это? В чём заключается работа тестировщика и кому она нужна, где ей учат и куда можно устроиться сразу после курсов, сколько платят QA-инженеру и есть ли у этой профессии минусы — отвечаем на все вопросы в статье.
Спойлер: в конце дарим скидку на курс IT Matreshka по тестированию с нуля. Даём всю теорию за три месяца, собираем портфолио и помогаем с трудоустройством.
Итак, чем занимается тестировщик?
Тестирует! Иными словами, прорабатывает сценарии того, как продукт будут использовать. Задача тестировщика — убедиться, что при любом наборе действий, с любым количеством участников и в любое время всё идет по плану. То есть так, как было задумано заказчиком и разработкой.
Зачем нужна его работа?
Чтобы избежать багов, уязвимостей и тупиковых сценариев. Например, без нагрузочного тестирования сайт интернет-магазина упадет из-за наплыва посетителей — прямо в разгар сезонной распродажи. Не будет заказов, не будет прибыли, одни только убытки на рекламу провалившейся акции.
Вот вы вышли за продуктами и застряли в километровой очереди: зависла база данных. На кассе узнаёте, что оплатить покупку сейчас можно только наличными, потому что в банке сбой. Идёте снимать наличные, и банкомат съедает карту. Не получается вызвать такси, проездной тоже не работает, умный домофон не пускает домой (прямо как в меме). Чтобы отвлечься, идёте серфить интернет, но и тут беда: страница любимой соцсети не грузится, с вашей страницы в Spotify удалилась вся музыка, а мессенджер схлопывается сразу после запуска.
Грустно, правда? Чтобы всего этого избежать, миру и нужны тестировщики.
Какие виды тестирования бывают?
Как вы уже поняли, проверять можно (и нужно!) любые продукты и ПО, с которыми взаимодействует пользователь. Задачи разные, поэтому видов тестирования много.
- ручное — тестировщик проверяет продукт сам;
- автоматизированное — тестировщик пишет или использует готовые программы для проверки;
- полуавтоматическое — гибрид ручных и автоматических тестов.
- функциональное — корректно ли работают все сценарии, кнопки, формы отправки данных;
- нефункциональное — другие свойства (например, как ведет себя сайт при наплыве пользователей, удобно ли устроен, быстро ли загружается).
- модульное — тестируем каждую функцию отдельно;
- интеграционное — проверяем, как работают несколько модулей вместе;
- системное — тестируем продукт целиком.
По функциональному покрытию продукта:
- smoke testing ( «дымовое») — минимальный набор тестов для нового продукта, выявляет самые очевидные ошибки;
- acceptance («приёмочное») — тестирование перед запуском на широкую аудиторию;
- regressing («регрессионное») — проводится после того, как в готовую программу внесли изменения, повторная проверка уже протестированного.
Есть ли в тестировании свои направления?
Направлений всего два. Если коротко, то различаются они по степени вовлеченности тестировщика.
- QC = Quality Control, контроль качества — тестировщик ориентируется на требования, которые уже описаны в документах. Задача — выяснить, соответствует ли им продукт.
- QA = Quality Assurance, обеспечение качества — тестировщик подключается ещё на этапе идеи и сам разрабатывает требования к продукту.
Нужно ли тестировщику уметь в разработку?
Нет, вовсе не обязательно. Программирование может потребоваться, если вы занимаетесь автотестами и сами пишете для них код. Но в целом у тестировщиков и разработчиков разные задачи и разные скиллы.
А что тогда нужно знать?
Входной набор навыков может быть разным. Хороший тестировщик постепенно понимает, какие области ему интересны, и развивается в них. Но вот что неплохо:
- знать браузеры и инструменты разработчиков;
- разбираться в том, как создаются тест-кейсы;
- представлять, какой цикл жизни проходит продукт;
- базово понимать HTML и CSS;
- для разработки автотестов — знать Java или Python;
- для работы с базами — владеть языком SQL;
- владеть иностранными языками, вся важная литература выходит в первую очередь на английском.
Где учат на тестировщика?
Чтобы войти в тестирование, можно пройти курсы. Они бывают разными, длятся от нескольких месяцев до года. Если вы только присматриваетесь к профессии тестировщика, не советуем покупать очень длинное обучение — рискуете быстро потерять интерес и потратить деньги впустую.
Выбирая курсы, убедитесь, что менторами будут тестировщики с хорошим опытом и свежими кейсами. Устаревшие техники и приемы десятилетней давности, увы, почти бесполезны.
Куда можно устроиться работать?
Куда угодно! Бизнес быстро цифровизируется — а значит, своё ПО есть плюс-минус у каждой компании. Тестировщик может заниматься банковскими проектами, медиа, e-сommerce, научными базами данных, программами для дизайна — собственно, чем захочет. Есть security testing — защита данных от утечек, есть тестирование игр.
После обучения можно устроиться в конкретную компанию и заниматься только её продуктом. Другой вариант — пойти в лабораторию тестирования и работать с разными заказчиками. Третий, для продвинутых — стать фрилансером и самому выбирать проекты.
Это востребованная профессия?
Да! Потому что тестировать нужно всё, продуктов масса, а вдумчивые профессионалы — на вес золота. Прямо сейчас (осень-2022) на HH около четырех тысяч открытых вакансий. Можете убедиться сами — ищите по запросам «тестировщик», «QA-инженер», «инженер по тестированию».
Как может профессионально расти тестировщик?
Есть четыре основных уровня в карьере:
- джуниор — младший специалист, занимается простыми кейсами и ручной проверкой;
- миддл — самостоятельно создает сценарии тестирования, оформляет документацию, иногда пишет автотесты;
- синьор — планирует процессы, руководит джунами;
- лид — координирует работу групп, определяет бюджеты и сроки, выделяет области автотестов.
Но можно пойти другим путём: например, только писать автотесты или уйти в бизнес-аналитику. Всё зависит от того, какие процессы больше нравятся и лучше всего получаются.
Реально ли найти работу без опыта?
Да, реально. Но будет гораздо проще с портфолио — его можно собрать заранее. Например, на наших курсах есть финальная практическая часть, студенты тренируются на реальных кейсах. Перспективных выпускников, которые справляются с заданиями, мы зовем работать с партнёрами Performance Lab.
Какие софт-скиллы нужны тестировщику?
Без мягких навыков и тут никуда. Иногда они даже важнее, чем база знаний и крутое портфолио. Вот что нужно для успешной карьеры в тестировании.
- Быть готовым к общению — с разработкой, заказчиками, аналитиками и менеджерами. Есть заржавевший стереотип, будто программирование и тестирование отлично подходит социофобам — так вот, это только стереотип.
- Уметь объяснять. Далеко не каждый клиент знает, как работает код, — тестировщик должен объяснить, в чем суть уязвимости и чем она грозит бизнесу.
- Правильно презентовать себя и свой труд. Скилл, который пригодится в любой профессии — а в тестировании просто необходим. Иначе ценность работы может остаться для заказчика туманной.
- Развивать критическое мышление — то есть уметь анализировать большой объем информации, разрабатывать гипотезы и подвергать сомнению готовые решения.
- Тренировать внимание к мелочам — ошибка может быть спрятана в неочевидном месте или проявляться в редком сценарии. Тут важна настойчивость и концентрация. Иногда тестирование сложного кейса буквально напоминает работу частного сыщика — со сбором улик и следственными экспериментами.
Главный вопрос: сколько платят тестировщикам?
Всё зависит от опыта и навыков. Зарплатная вилка в 2022 году для России – от 65 000 рублей в месяц новичку до 400 000+ рублей продвинутому тестировщику. Но на самом деле верхнего потолка нет: уникальный специалист или очень трудолюбивый фрилансер могут получать гораздо больше средней зарплаты по рынку.
А подводные камни есть?
Да, конечно. Как и любая профессия, тестирование — не безоблачный мир с розовыми единорогами. Вот какие минусы называют чаще всего.
- Порой нужно выполнять много однотипных задач. Особенно на первых порах, особенно если занимаетесь только ручным тестированием.
- Тестировщик — это человек, который редко приносит хорошие новости. Сообщать разработчику, что ему предстоит переписать кусок сложного кода, не всегда легко и приятно.
- Чтобы быть хорошим тестировщиком, нужно постоянно учиться и развивать насмотренность в самых разных областях.
Чего всё же больше: плюсов или минусов?
Зависит от приоритетов. Конечно, если вы на дух не переносите монотонные задачи и обилие деталей, работать тестировщиком будет трудно. Но у профессии есть и огромное количество плюсов.
- Можно работать откуда угодно — в большинстве случаев работа удаленная.
- Тестировщиков не так много, а спрос на них очень высок — так что вы будете желанным и востребованным специалистом.
- Хорошие зарплатные условия, отличный соцпакет во многих IT-компаниях.
- Возможность релоцироваться — алгоритмы тестирования везде одинаковые, устроиться в международную компанию нетрудно.
- Низкий порог входа — тестирование неспроста называют самой легкой точкой входа в IT. У джунов всегда есть опытный наставник и огромные возможности для развития, а дорасти до миддла можно за через пару лет. Кроме того, поработав тестировщиком, можно перейти в разработку или аналитику — другие интересные и доходные области.
Круто! Так как начать?
Отправиться за знаниями! В школе IT Matreshka мы учим тестированию с нуля за три месяца, даём много практики и устраиваем лучших выпускников к себе на работу. У нас опытные кураторы со стажем в тестировании от 5 до 12 лет, с проектами в Кремниевой долине, в банковском секторе и серьезных госкорпорациях. А если дочитали до этого места, то для вас дополнительный бонус — скидка 20% на любой тариф. Чтобы узнать о курсе больше и оставить заявку на покупку со скидкой, переходите по ссылке ».