Тестировщик программного обеспечения, или QA-специалист. Карьерные перспективы, зарплата, профнавыки
Илья Тарасов
Предприниматель в области интернет-технологий
Информация обновлена:
9 июня 2021
Время на чтение:
5 минут
3479
Тестировщик программного обеспечения (или QA-инженер) – это специалист, который испытывает и проверяет программное обеспечение (ПО) на возможные ошибки и соответствие требованиям. Тестировщик находит ошибки на этапе разработки проекта, на завершающей стадии и после принятия ПО заказчиком.
Специалист моделирует ситуацию, которая с большой долей вероятности может возникнуть у пользователя, и таким образом проверяет работоспособность программы или приложения. Обнаруженные дефекты исправляются, но уже разработчиком. Тестировщик только готовит отчет и передает его соответствующим специалистам для работы над ошибками.
Тестировщиков ПО принято делить на мануальщиков (тех, кто ищет ошибки вручную) и автотестеров. Но в наше время это разделение очень условно – например, нет автоматизатора, который при необходимости не умеет делать все вручную.
Зарплатные ориентиры
Доступно более 5 400 вакансий по данным портала hh.ru
Зарплата без опыта работы от 20 000 рублей
Зарплата при опыте от 1 – 3 лет до 250 000 рублей
Срок обучение от 0 уровня до первого заказа от 4 до 12 месяцев
Профессия подойдет людям, не боящимся рутины и способным к кропотливому, часто однообразному труду. У высококвалифицированных специалистов с широким спектром обязанностей рабочей рутины гораздо меньше.
Новичкам стоит быть готовыми к тому, что каждый день будет похож на предыдущий, а один и тот же этап проекта придется проходить на предмет ошибок несколько раз. Поэтому здесь также важны стрессоустойчивость и высокий порог терпения, умение долго концентрировать внимание.
Для тестировщика ПО большую роль играют аналитические способности – он должен понимать взаимосвязи, анализировать результаты тестов и т. д.
Плюсы и минусы профессии
Хорошие перспективы на рынке труда: технологии стремительно развиваются, квалифицированные тестировщики очень востребованы.
Хорошая заработная плата (при опыте работы).
Возможность карьерного роста.
Можно сочетать работу с учебой.
Возможна рутина и однообразие в работе.
Сидячий образ жизни.
Высокая ответственность.
Необходимость постоянного обучения и саморазвития: поскольку технологии не стоят на месте, профессиональные знания приходится «освежать» и расширять.
Навыки
Знание основ HTML. Это язык, который применяется для структурирования и отображения web-страницы и контента на ней
Знание SQL. Язык запросов, тестировщику нужен для бэкенд-тестирования, для проверки тестовых данных, вставки, удаления, обновления их значений в базах данных
Работа с Java. Один из базовых языков программирования, тестировщику нужен, помимо прочего, для автотестов
Знание основ CSS. Это язык описания внешнего вида HTML-документа, без которого не обходится практически ни один web-ресурс или приложение
Работа с Jira. Это система баг-трекинга, с помощью которой можно выявлять, контролировать и регистрировать найденные в ПО ошибки
Начало профессии
Использование Selenium. Инструмент для автоматизации действий web-браузера, чаще всего применяется для тестирования web-приложений.
Работа с Git. Система, которая отслеживает и фиксирует изменения в файлах.
Знание инструментов devTools. Программы, позволяющие тестировать и отлаживать ПО.
Работа с Python. Еще один популярный язык программирования наряду с Java.
Продвинутый уровень
Знание методологии разработки Agile/Scrum. Обычно используются при разработке крупных проектов.
Работа с Docker. Инструмент контейнеризации, при помощи которого можно создавать и распространять контейнеры с необходимым софтом, настраивать взаимодействие тестов и т. д.
Уверенные навыки в тестировании UI, UX. UI – это графический дизайн, UX – это тестирование интерфейса на предмет пригодности для быстрого решения задач пользователя.
Уверенные навыки в API-тестировании. Данное тестирование используется для выявления ошибок взаимодействия между модулями системы или между системами.
Согласно рейтингу, составленному по результатам опроса, более 57 тысяч респондентов SQL, Java, HTML и CSS являются самыми востребованными технологиями среди разработчиков. Источник
Инструменты
Selenium. Программа, позволяющая выполнять автоматическое тестирование сайтов и приложений
Postman. Популярная программа для API-тестирования
Monosnap. Инструмент для создания и анализа скриншотов
Katalon Studio. Инструмент для автоматизации тестирования с большим набором функций
Jira. Система для учета ошибок, обнаруженных в мобильных и компьютерных приложениях
Mockaroo. Генератор реалистичных тестовых данных, понадобится для отладки программ
Robot Framework. Фреймворк для автоматизации приемочного тестирования
Gatling. Фреймворк для проведения нагрузочного тестирования
Чарльз Делекторских
Fullstack-разработчик
Первый практический опыт можно получить на биржах фриланса. Преимуществом такого способа является большой выбор разнообразных проектов. Также, если человек прошел курсы и получил профессию тестировщика, то ряд школ помогает способным студентам с трудоустройством.
Тестировщики ПО, которые уже имеют какой-то опыт, могут рассчитывать на трудоустройство в IT-компании, банковские структуры и т. п. – в том числе на удаленном режиме. Проще всего искать такие вакансии через порталы по трудоустройству.
— Чарльз Делекторских Fullstack-разработчик
Как научиться профессии тестировщика программного обеспечения
Новичкам в IT. Курс научит тестировать мобильные приложения, сайты и прочее программное обеспечение, даст хороший старт в профессии.
Тестировщикам начального уровня. Курс позволит освоить основные инструменты автоматизированного тестирования и покажет, как профессионально развиваться дальше.
Чему научат:
Тестирование мобильных приложений.
Техники тест-дизайна.
Работа в таск-трекерах.
Применение шаблонов тест-планов, тест-кейсов, сценариев и чек-листов.
Основы программирования на Java.
Тестирование интерфейсов пользователей.
Тестировщик программного обеспечения на Python
2
Курс поможет «с нуля» получить профессию тестировщика ПО с навыками автоматизации на Python.
Новичкам в тестировании мобильных приложений. Курс даст понимание того, как разрабатываются мобильные приложения, обучит всем этапам тестирования, в том числе автотестам для Android и iOS.
Тестировщикам смежных сфер. Курс даст понимание специфики тестирования мобильных приложений, научит писать сложные проверочные тесты, работать с симуляторами и эмуляторами.
Чему научат:
Работа с Android studio и Xcode.
Работа с Jenkins.
Разработка тестов под любые задачи.
Проведение функционального тестирования.
Java QA Engineer. Базовый курс
4
Курс «с нуля» обучит автоматизированному тестированию на Java и поможет в дальнейшем оптимизировать рабочий процесс.
Начинающим тестировщикам. Обучение даст базовую теорию тестирования, основы Java, SQL, первые UI тесты.
Фрилансерам. Курс познакомит с автоматизацией тестирования на Java с нуля и позволит получить востребованную специальность с возможностью работать удаленно.
Чему научат:
Работа с SQL.
Автоматизация UI тестов.
Знакомство с основными паттернами.
Освоение PageObject, PageFactory и ScreenPlay.
Тестировщик ПО
5
Курс даст азы ручного тестирования, научит быстро находить ошибки, разрабатывать тест-кейсы и создавать эффективные тестовые сценарии.
Начать учиться и работать можно и без знания английского, но если человек хочет строить карьеру и достигнуть высот, то без знания языка не обойтись – хотя бы на среднем уровне.
Правда ли, что для работы тестировщиком ПО нужно техническое образование?
Нет, неправда. Многие курсы, которые готовят тестировщиков ПО, вообще принимают только с объемом школьных знаний.
Есть ли профильные высшие или средние учебные заведения для тестировщиков?
Именно для тестировщиков – нет. Но можно получить высшее IT или техническое образование, например.
Насколько востребованы тестировщики?
Тестировщики постоянно востребованы.
Какая специальность наиболее близка к профессии тестировщика? Изучаю тему на случай, если захочу поменять деятельность, но не слишком радикально.
Можно попробовать выучиться на frontend- или backend-разработчика, например.
Какое образование лучше иметь, чтобы освоить профессию?