Инженер тестировщик что это
Чем занимается инженер по тестированию и как начать работать в этой области
Главные качества тестировщика — внимательность до дотошности, перфекционизм и сильное структурное мышление
Инженер по тестированию контролирует качество IT-продукта. Он находит ошибки, записывает их в отчет и передает разработчикам. На старте нужны минимальные технические навыки, поэтому такая профессия считается одной из точек входа в сферу IT. Фёдор Зволинский, руководитель службы тестирования Яндекс.Браузера, поделился особенностями работы инженера по тестированию и рассказал, какие качества помогут стать экспертом в этой области.
Работа инженера по тестированию, или, как мы говорим, тестировщика, экономит ресурсы компании и команды разработки. Продукт тестируют разными способами на каждом этапе. Чем раньше найдены ошибки, тем проще и дешевле для компании будет их исправить.
Инженер по тестированию хорошо знает продукт, понимает бизнес-процессы и может предложить решение проблемы, исходя из своего опыта. Миссия тестировщика — поддерживать баланс между интересами пользователя, целями менеджмента и возможностями разработчиков. Курс «Инженер по тестированию» Яндекс.Практикума рассчитан именно на это направление.
Задачи тестировщика
Инженер по тестированию отвечает за аудит качества продукта. Есть много направлений проверки. Например, проверка на соответствие функциональным или нагрузочным требованиям. Сохраняется ли история заказов в приложении вызова такси — это проверка функции продукта. Выдержит ли сайт, если 100 покупателей одновременно оформят покупку, — это тест на устойчивость к нагрузке.
Тестировщик проверяет код на соответствие всем требованиям и в процессе находит баги — ошибки, из-за которых продукт работает неправильно. Например, в приложении для поиска отелей не запускается сортировка по цене за ночь. Или сервис выдает ошибку при попытке добавить товар в корзину. Тестировщик проходит весь пользовательский сценарий: совершает покупки, вызывает такси, настраивает личный кабинет и так далее. Если что-то работает неправильно, фиксирует ошибку.
Тестировщик составляет тестовую модель. Он изучает структуру продукта и продумывает порядок проверки всех элементов, функций и состояний. Например, на начальных этапах нужно описать всё, что пользователь видит на разных страницах и экранах: как ведут себя фотографии товаров при наведении, есть ли чат поддержки и как его вызвать. Когда продукт меняется или усложняется, тестировщик вносит изменения в тестовую модель.
Еще одна задача тестировщика — автоматизация. Объем тестирования постоянно растет, а инструменты автоматической проверки для разных направлений тестирования помогают экономить время. Тестировщик постоянно работает над тем, чтобы контроль качества продукта становился еще надежнее и быстрее.
Тестировщик всегда может поставить себя на место клиента. Он понимает, зачем создается продукт и в чём его польза. Если главные функции работают неправильно или ими неудобно пользоваться, он способен объяснить проблему и разработчику, и менеджеру. Технические знания и пользовательский кругозор помогают всё точно сформулировать и в некоторых случаях предложить решение.
Как работает тестировщик
Работа тестировщика делится на этапы. Вначале он собирает всю информацию, изучает и анализирует требования к продукту. Следующий шаг — выбор методов тестирования и создание тестовой модели. Затем он проводит все тесты, а после них пишет отчет, где указывает ошибки, дает ссылки на технические требования и по возможности предлагает решение проблемы. Заключительный этап — проверка исправленного продукта.
Первый этап. Сбор информации
Сначала нужно изучить задачу: какие требования и условия были у нового продукта, как это работает на практике и всех ли в команде устраивает результат. Всё это можно узнать у разработчиков и менеджера продукта.
На этом этапе очень важны навыки общения с командой. Чем лучше тестировщик разберется в задаче, тем проще ему будет создать качественную и полную тестовую модель. Также нужно хорошо понимать, чего от нового сервиса или сайта ждут пользователи. Для этого стоит вникнуть в бизнес-процессы, посмотреть аналитику.
Второй этап. Анализ
Для работы на этом этапе важно понимать техническую документацию, знать требования к продукту. Если тестировщик не ориентируется в терминах и плохо понимает, как устроено приложение или сайт, здесь могут возникнуть проблемы.
Тестировщик разбивает все глобальные процессы в продукте на самые маленькие блоки. Чтобы проверить, как работает приложение, он будет отдельно тестировать каждую страницу, кнопку и действие.
«Если вы тестируете показ всплывающего окна, то такими маленькими блоками могут стать отрисовка всплывающего окна и условия показа. Отдельно проверяем, как окно будет отображаться для пользователя, и оцениваем логику показа без тестирования пользовательского интерфейса. При таком тщательном подходе в тестовой модели будет меньше ошибок, а проверка пройдет быстрее», — говорит Фёдор Зволинский.
Цель этого этапа — понять, что нужно тестировать. Качественный анализ помогает точно оценить время, которое понадобится для проверки.
Третий этап. Разработка тестовых сценариев
Тестовые сценарии описывают действия в системе, условия и ожидаемый результат. Задача инженера по тестированию — выбрать такой сценарий, который лучше всего подходит для проверки продукта.
Тестировщик составляет тест-кейсы — описание всех условий и шагов тестирования. Он ссылается на требования к продукту, указывает нужные настройки для тестовой среды, перечисляет все действия. Для каждого пункта тест-кейса тестировщик описывает результаты: ожидаемый и фактический.
Чтобы получить полный набор тестов без дублирования, специалисты пользуются техниками тест-дизайна. Это стандартные методики проверки для разных сценариев и отдельных функций. Знание основных техник помогает сэкономить время.
«Простой пример: есть функция, которая считает суммарную стоимость купленных билетов в кино. При этом стоимость одного билета известна, а купить можно не более восьми билетов за раз. В таком случае мы можем воспользоваться двумя техниками, которые были придуманы до нас: классами эквивалентности и граничными значениями. Сначала нам нужно проверить, что функция действительно всё правильно считает. Возьмём значение из середины, допустим, 5. Если с результатом всё будет в порядке, следует проверить границы — 1 и 8, а также точки снаружи границ — 0 и 9. Таким образом мы создали всего пять тестов. А если бы мы перебирали все значения от 0 до 9, нам потребовалось бы десять проверок. Экономия времени и усилий в два раза», — объясняет Фёдор Зволинский.
Цель этого этапа — решить, как проводить тесты, выбрать инструменты и методику.
Четвертый этап. Тестирование
Следующий шаг — автоматическое или ручное тестирование. Специалист проходит все этапы, которые описаны в тест-кейсе и проверяет работу продукта. Например, если нужно найти ошибки в верстке, тестировщик использует валидаторы HTML/CSS. Достаточно указать путь к приложению или сайту, и сервис покажет все обнаруженные ошибки.
Проверить продукт на совместимость с браузерами и операционными системами помогают эмуляторы. Это программы, которые воспроизводят возможности разных устройств — ПК, планшета или смартфона — с разными операционными системами. Эмуляторы удобны, когда продукт нужно протестировать одновременно на Android и iOS: не нужно ничего загружать на устройство, все действия выполняются на виртуальном аналоге.
Поиск уязвимостей или перформанс-тесты — для каждого направления тестирования нужен свой инструмент. Существуют специальные программы, которые решают отдельные задачи тестирования автоматически.
Можно управлять организацией тестирования с помощью сервисов. Например, они позволяют создавать тест-кейсы и назначать ответственных за выполнение тестирования. Такие инструменты нужны для того, чтобы привести весь процесс в порядок и не потерять данные предыдущих тестов. Каждая компания выбирает свой подход к тестированию исходя из задач проекта.
Пятый этап. Подготовка отчета
Ошибки нужно описать и показать. Кроме текста тестировщик готовит скриншоты или видео, где можно увидеть ошибку. Всё, что удалось обнаружить, нужно зафиксировать в специальных программах. Для этого используют Bugzilla, Redmine, Mantis, HP ALM. Если процессы в компании еще не настроены, работают с Word и Excel.
Отчет с описанием всех проблем и ошибок тестировщик передает разработчикам и менеджерам. Иногда нужно уточнить, является ли обнаруженный эффект ошибкой или команда изначально заложила его в идею продукта.
Описывать ошибки нужно так, чтобы разработчик или менеджер могли повторить все действия, которые к ней приводят, и увидеть проблему. Подробное описание помогает и на следующем этапе, когда нужно выяснить, действительно ли все ошибки исправлены.
Шестой этап. Проверка исправленного продукта
Нужно свериться с отчетом об ошибках и убедиться, что все проблемы устранены. Если всё работает правильно, тестировщик отмечает, что все обнаруженные ошибки исправлены. Продукт готов к запуску.
Что нужно для старта
Минимальные технические знания помогут тестировщику лучше ориентироваться в задачах и общаться с командой разработки. Пригодится умение читать код, базовые навыки системного администрирования, понимание принципов работы с данными. Еще важно разбираться в особенностях разных операционных систем, браузеров и устройств.
Собеседование с будущим инженером по тестированию обычно строится вокруг понятий тест-дизайна и тест-кейсов. Нужно понимать, для чего пишутся тестовые сценарии, как оценивать эффективность тестирования и какие подходы лучше использовать для разных случаев. Работодатель ждет, что кандидат разбирается в процессе разработки ПО, понимает, какие специалисты за что отвечают и к кому обратиться за информацией, необходимой для тестирования. Преимуществом будет понимание моделей разработки: каскадной, итеративной, спиральной.
В профессии тестировщика очень важны софт-скиллы. Нужно уметь договариваться с другими, аргументировать свою точку зрения и принимать чужую. Главные качества инженера по тестированию — внимательность до дотошности, перфекционизм и сильное структурное мышление. Такой специалист быстро освоит профессию и поможет улучшить продукт.
Я работаю тестировщиком и зарабатываю около 150 000 ₽
Профессия: тестировщик
В трудовом договоре написано «Старший специалист по тестированию», но в миру мы известны как QA-инженеры или попросту тестировщики.
Доход: 150 000 Р на руки
Выбор профессии
Насколько мне известно, нет такой профессии в вузах — «тестировщик», потому что эта работа не требует специфических навыков. Хорошая соображалка и элементарная компьютерная грамотность — любой человек с этими навыками может стать начинающим тестировщиком.
По образованию я бакалавр направления «Прикладная информатика в экономике» и моя карьера начиналась в 1С-франчайзи. 1С я изучала самостоятельно и на краткосрочных курсах, в вузах этому не учат.
На старте карьеры я работала не в Москве, а в другом городе-миллионнике, и в 2016 году я получала около 25 000 рублей.
Однако, жизнь сложилась так, что я переехала в Москву, устроилась также в компанию 1С на зарплату 55 000 рублей, но долго не продержалась. Сыграли разные факторы: мне не нравилась предметная сфера, не устраивала политика 1С в области сертификации специалистов и вообще узкая направленность этой сферы. Также при устройстве у меня была серая зарплата, а в 2017 году ее срочно полностью «обелили», потому что компания рисковала нарваться на штрафы. После этого зарплата стала 50 000 рублей (конец 2017 года) и я решила искать новую работу.
Я хотела остаться с ИТ, но программировать на популярных языках, например Python или Java, не умела, да и учиться особенно не было желания. Тогда по совету знакомого разработчика решила попробовать себя в качестве тестировщика.
Я почитала книги, в том числе легендарного Савина «Тестирование дот ком», посмотрела кое-какие видео на ютубе, почитала блоги, немного потренировалась писать запросы SQL (тут меня спасло то, что внутренний язык запросов 1С — это как SQL, только на русском, было просто). С этим багажом и вышла на рынок.
Около месяца я ходила по собеседованиям, получила много отказов, потому что мало компаний в конце 2017 года были готовы брать нулевых сотрудников. Это сейчас для тестеров есть стажировки в условном Сбербанке, только приходите, тогда ничего подобного не было. В итоге мне прислали оффер из телеком-компании на 65 000 рублей. Это и стало моим первым местом работы в качестве тестировщика.
Суть профессии
Профессия тестировщика подойдет тем, кто хочет работать в ИТ, но не готов погружаться в тонкости разработки. Хотя знание любого языка программирования не помешает, ведь многие ручные операции можно и нужно автоматизировать, не отвлекая разработчиков от их работы. Не повредят общие технические знания: как работают сети, что такое HTTP-протокол, какая бывает архитектура приложений. Хорошо, когда у тестировщика есть знания по предметной сфере и понимание бизнес-процессов: это поможет воссоздать портрет потенциального пользователя и более тщательно провести тестирование.
Тестирование — не творческая работа. Тут важнее внимательность, усидчивость, гибкий ум и коммуникабельность. Зачастую именно тестировщику приходится играть роль «телефончика» между разработкой, бизнесом и специалистами из смежных систем. Молчуны-интроверты часто не справляются.
Работая тестировщиком, я часто вспоминаю цитату из «Дивного нового мира» Хаксли: «Как хорошо, что я бета… У альф работа гораздо трудней, чем у нас, потому что альфы страшно умные. Прямо чудесно, что я бета, что у нас работа легче». Под альфами, конечно, понимаются программисты:)
Мне нравится быть частью ИТ-сферы, зарабатывать деньги, сидя за компьютером — это моя мечта со школы. С одной стороны, эта работа довольно простая, для ручного тестирования не надо быть гением. С другой, можно углубиться в автоматизацию и баловаться кодингом: писать автотесты, утилиты для генерации тестовых данных или других рутинных операций. Но при этом нет такой ответственности, как у разработчика. Если тестировщик напишет некачественный код, то выстрелит в ногу себе, а не пользователю продукта.
Самое трудное в работе — работа в условиях недостатка документации и тушение пожаров на проде. К сожалению, даже лучшие тестировщики пропускают баги, которые влияют на пользователей, и каждый такой инцидент — стресс.
Место работы
Сейчас я работаю в банке, который все знают, не хочу конкретизировать. В крупных банках условия плюс-минус одинаковые.
Мне нравится отношение компании к сотрудникам. У нас белая зарплата, регулярные премии, ДМС со стоматологией, скидки на фитнес, уютный офис недалеко от метро. Не могу сказать ничего про корпоративы, так как устроилась после начала пандемии, но говорят, раньше они были:)
Есть возможность удаленной работы, нет трекинга рабочего времени, самый главный показатель — выполнение задач в рамках дедлайна.
Основной минус, который я сейчас вижу, — это отсутствие серьезного роста по зарплате, но это общая проблема в ИТ, как мне кажется. Хочешь хорошую прибавку — либо шантажируй оффером (и не факт, что это хорошо закончится), либо уходи в другое место. Других минусов назвать не могу.
Рабочий день
Я работаю на удаленке, и мой рабочий день начинается в промежутке с 9 до 10 часов. Мы работаем по скраму (а кто по нему сейчас не работает), и в 11 часов у нас daily scrum meeting, а по-русски — ежедневная летучка. Обсуждаем, кто что сделал вчера, чем будет заниматься сегодня и какие есть проблемы. После этого каждый расходится по своим делам.
В мои обязанности входит регрессионное тестирование перед релизом — убедиться, что новые функции не поломали то, что работало раньше. Время на регресс ограничено, не более 1-2 дней в неделю, все остальное время надо посвящать тестированию новых задач.
Тестирование проходит в несколько этапов. Я могу начинать, когда готова техническая документация, по которой разработчик пишет код. Я же в это время пишу тестовую документацию: чек-листы и тест-кейсы. Чек-листы позволяют проводить проверки быстрее, зато тест-кейсы облегчают работу новичкам, в них по шагам описано, какие кнопки надо нажимать и что в итоге должно получиться.
Когда разработчик закончил свою работу, он переводит задачу на меня, и я исполняю свои тесты. Каждый тест я отмечаю: если все хорошо, то «пройден» (passed), а если нашлась ошибка — тест «завален» (failed). Я составляю баг — отчет о дефекте, где описываю шаги воспроизведения (что я делала), ожидаемый результат (он основан на технической документации) и фактический результат (что происходит на самом деле). Баг — это любая ситуация, когда ожидаемый и фактический результат не совпадают. Например, пользователь вводит неверный пароль, а программа все равно разрешает вход, — это баг.
Проверка небольшой задачи занимает примерно день, и как только накопится пачка багов, разработчик их исправляет и отдает мне новую сборку программы. Я снова прохожу свои тесты, иногда после починки багов вылезают новые неприятности. В итоге цикл «кодинг — проверка» осуществляется до тех пор, пока все не будет работать как надо. Разработчик закрывает задачу, и мы переключаемся на следующую.
Еще одна из наших задач — автоматизация тестов. Ручной труд долгий и утомительный, поэтому чем больше тестов автоматизировано, тем лучше. Но в автоматизации есть свои сложности, иногда тесты ломаются, показывают ложные падения или ложный успешный результат. Наша задача — писать новые устойчивые тесты, актуализировать старые и поддерживать всю систему автотестов в жизнеспособном состоянии.
И конечно же, скрам не мыслим без «церемоний» — это встречи команды для обсуждения задач. Мы работаем двухнедельными спринтами. В начале недели мы планируем, что должны сделать за этот спринт, в середине недели 1-2 раза собираемся на «груминг» — обсуждение будущих задач, а в конце недели проводим демо и ретро. Демо — это демонстрация бизнесу того, что мы у спели сделать, а ретро — обсуждение процессов и выявление способов работать еще лучше.
Удивительный случай
Здесь могла быть изумительная байка про джуна-тестировщика, который случайно стёр все данные с продакшена, но к счастью, у нас такого не случалось:)
На собеседованиях часто просят рассказать про самый интересный баг, который я находила, но у меня нет таких историй. Все баги обычные: то верстка поехала, то при нажатии «Сохранить» документ удаляется.
Подработки
Мне хватает основной работы, поэтому искать подработки я не пыталась. В отличие от разработчика, который может работать один, тестировщик не самодостаточен, поэтому найти работу на фрилансе не так-то просто.
Есть сервисы по краудтестингу, но это больше развлечение для стажеров. Денег там не заработать (это как биржи копирайтинга с расценками 10 рублей за 1000 збп).
Доход
Сейчас я получаю около 150 000 рублей на руки. Это в рамках рынка, хотя с моей квалификацией можно найти зарплату и повыше. Но пока что я морально не готова поднимать якорь.
Чтобы зарабатывать больше, говорят, надо устроиться в другой всем известный банк, а я туда не хочу:)
Расходы
Я живу одна и полностью себя обеспечиваю. В среднем регулярные траты такие:
Сколько получится — в подушку безопасности. Сейчас у меня накоплена сумма, которая позволяет спать спокойно, поэтому пополнение подушки идет по остаточному принципу.
Траты по остальным категориям зависят от сезона, необходимости и средств в наличии. Так, например, в сентябре я потратила рекордные 27 000 на одежду и 21 000 на обустройство рабочего места. Иногда приходится оплатить какое-то обучение (к сожалению, компания не готова спонсировать развитие сотрудников), несколько раз в год я езжу в родной город, сейчас много трат, связанных с подготовкой к грядущему новому году, а летом идут траты на отпуск.
Экономия
Особых лайфхаков по экономии у меня нет. Еду покупаю во Вкусвилле, одежду в массмаркете, шкаф стараюсь не захламлять.
Конечно, я могла бы отказаться от многих необязательных трат, например, тренироваться без тренера, пилить ногти дома, не ходить к косметологу, скачивать фильмы с торрентов вместо походов в кино, не ходить в театры и на концерты, есть только дома, передвигаться только на метро, и ходить в одной и той же одежде, пока она не поползет по швам. Но смысл? За деньги не купишь счастья, но можно купить маленькие радости, которые делают жизнь лучше.
Финансовая цель
К пенсии хочу свою квартиру, но пока не знаю, где. Может, в Москве, а может и нет. Поэтому пока что не тороплюсь влезать в ипотеку, чтобы купить одну квартиру по цене двух, а инвестирую.
Будущее
В ближайшее время я не хочу уходить из профессии, но возможно сменю место работы. Я устала от банка, хочется чего-то менее хардкорного и более спокойного. Но пока что у меня есть цель и я ее не реализовала, и я не сдвинусь с места, пока ее не выполню.
По хард-скиллам мне надо подтянуть автоматизацию. Многие вещи я делаю интуитивно, а хочется опираться на best practice. Меня не привлекает должность лида тестирования, поэтому свою ценность на рынке я собираюсь повышать именно путем совершенствования хард-скиллов и решения сложных технических задач.
Что касается более далекой перспективы, я вижу себя в роли тестировщика лет до 55-60. Я трудоголик и собираюсь работать до последнего, не хочу просиживать старость дома (даже если он будет на берегу Тихого океана), как это сейчас делают мои бабушки (нет, они не на берегу, они в хрущевках города-миллионника). Я буду энергичной бабулей, которая поднимает штангу в качалке и путешествует по миру (надеюсь, к тому времени ковидные ограничения снимут).
Сейчас я вижу, как набирает обороты онлайн-образование, и ютьюб часто предлагает мне освоить профессию тестировщика:) Может, лет через 20 я стану методистом в условном Скилл Боксе, а может скрам-мастером (если к тому времени аджайл не умрет). В общем, после 50 надо будет начинать думать про переквалификацию в менее техническую должность, потому что мозги будут уже не торт.
Профессии. Читатели делятся профессиональным опытом.
Кто такой тестировщик и как им стать с нуля
Разбираемся, кому подходит профессия и что нужно уметь QA-специалисту.
Тестировщики, или QA-инженеры, — это люди, которые проверяют, как работает программа или приложение. Они ищут ошибки, смотрят, чтобы программа делала именно то, что задумано, защищают продукт от хакеров, проверяют, как приложение работает на разных устройствах и в разных операционных системах.
Тем, кто не работал тестировщиком, кажется, что это очень просто: понажимал все кнопки подряд, нашёл ошибку, сказал разработчику, и всё. На самом деле тестировщик — это сложная и творческая профессия на стыке IT, UX-дизайна и продуктового менеджмента.
Что делает тестировщик
Честно говоря, тестировщикам действительно приходится тыкать на все кнопочки и ссылки, заполнять все формы и стараться совершить все возможные ошибки, которые могут прийти в голову пользователю. Без этого не обойтись.
Неполиткорректные разработчики из-за этого когда-то обидно называли тестировщиков «обезьянками-кликальщиками». Термин был так распространён, что Android назвал свой инструмент для автоматизации тестирования MonkeyRunner — в том смысле, что он как обезьянка, только быстрее.
Программист, консультант, специалист по документированию. Легко и доступно рассказывает о сложных вещах в программировании и дизайне.
Но не думайте, что тестировщики лишь хаотично бьют по клавишам в надежде найти баг, — это непродуктивно. У них есть собственные методы для определения слабых мест программы и быстрого поиска ошибок.
QA-инженеры придумывают инструкции для тестирования — тест-кейсы. На элементарном уровне это выглядит так: аналитики пишут требования — какие данные должны быть на входе, как они обрабатываются, что должно получиться в результате; тестировщики пишут пошаговые инструкции для проверки программы на соответствие этим требованиям.
Тестировщик должен скрупулёзно проверить, что будет, если совершить какое-то действие, и соответствует ли результат ожидаемому.
Но ошибки коварны — в лабораторных условиях они могут себя и не проявить, зато пользователь наткнётся на них после релиза. Поэтому QA-инженеры придумывают разные стандартные и нестандартные ситуации, чтобы проверить, как поведёт себя программа. Это творческий процесс, для поиска скрытых багов приходится проявлять смекалку и аналитические способности.
Нужно предусмотреть все возможные и невозможные варианты. Что будет, если пользователь введёт цифры вместо букв? А что, если у него компьютер глючный? А вдруг сразу много пользователей будут работать и перегрузят систему?
Работа тестировщика — это бесконечное приближение к совершенству. Невозможно проверить всё, поэтому тестировщик должен работать так, чтобы совершить минимум действий, но найти максимум ошибок.
Мануальщики и автотестеры
Облегчить работу тестировщика помогают программы для автоматического тестирования. Автоматизация сокращает время тестирования и уменьшает рутину в работе. В больших проектах без автоматизации не обойтись: там очень много элементарных повторяющихся действий, никакого времени не хватит, чтобы все их проделать.
Всех тестировщиков делят на мануальщиков и автотестеров. Первые ищут ошибки в коде вручную, вторые пишут программы, которые делают это автоматически. Но это очень условное деление. Вы не найдёте автоматизатора, который не умел бы тестировать программу вручную. А многие мануальные тестировщики не любят рутину, поэтому осваивают языки программирования и пишут автоматические тесты. Опытные специалисты могут выполнять работу и мануальщика, и автотестера.
Может ли новичок-нетехнарь стать хорошим QA-специалистом
Порог входа в тестирование довольно низкий. Чтобы стать тестировщиком, не требуется техническое образование. Главное, чтобы человеку была интересна сфера IT и он хотел развиваться в этом направлении. Об этом говорит в своём интервью на hh.ru руководитель департамента обеспечения качества ПО Veeam Software Игорь Кацев.
На сайте Software-Testing.ru опрашивали тестировщиков из России и СНГ по поводу их образования. Оказалось, что в профессию приходят и достигают в ней карьерных высот разные люди: технари, гуманитарии, экономисты, юристы, люди с двумя высшими и люди без диплома вообще.
Насколько востребована профессия тестировщика
Тестировщики нужны во всех мало-мальски серьёзных IT-проектах. Большие компании предпочитают нанимать их в штат, малые работают с фрилансерами. О том, насколько востребованы QA-специалисты, говорят данные с сайтов по поиску работы:
Мануальщиков, не понимающих кода, работодатели не любят, даже если они прекрасно составляют тесты. Но и автоматизаторы, не знающие основ тестирования, тоже никому не интересны.
Вот, например, скрин с hh.ru, где работодатель перечисляет требования к тестировщику:
Большим спросом пользуются универсалы, владеющие современными методами тестирования, знающие языки программирования, умеющие составлять и автоматизировать тесты, например:
На какую зарплату можно рассчитывать
Заработная плата тестировщика в регионах — от 55 до 60 тысяч рублей, а в Москве — 80–150 тысяч.
Новички могут рассчитывать на зарплату от 40 тысяч рублей, специалисты высокого уровня получают 220–300 тысяч.
Как развиваться тестировщику
Путей для карьерного роста много. Некоторые начинают с тестирования, чтобы потом уйти в разработку, но это не единственный вариант — можно развиваться и внутри профессии.
Младший специалист тестирует программы вручную по готовым тест-кейсам. Чтобы из «обезьянки» стать мидлом, нужно развиваться: досконально изучать проект, знать язык кода и основы автоматического тестирования.
Если джуниор хорошо себя зарекомендует, то через 2-3 года получит повышение и станет мидлом. Будет самостоятельно составлять тест-кейсы и заполнять документацию.
Ещё через год-полтора успешный мидл может претендовать на должность старшего специалиста (Senior QA Engineer). Его круг задач расширяется: синьор планирует работы по тестированию, контролирует работу джунов.
Лет через пять можно стать тимлидом — руководителем команды тестировщиков. От тимлида требуются профессиональные компетенции, навыки менеджмента, умение решать сложные задачи.
Так происходит карьерный рост специалиста по вертикали. Но на практике тестировщики часто выбирают развитие внутри профессии — например, специализации по тестированию:
Какие личные качества необходимы тестировщику
Кроме того, в тестировании очень важны личные качества специалиста. Вот список основных, без которых точно не обойтись:
Что надо уметь
От тестировщика требуется:
Кроме того, тестировщик должен владеть инструментами ручного и автоматического тестирования. Это могут быть:
Для автоматизации тестов понадобятся системы тестирования веб-приложений, программы для функционального и нагрузочного тестирования.
Ну и обязательно потребуется английский язык — для чтения и заполнения технической документации.
Где всему этому научиться
Если вас увлекла профессия тестировщика, можно самостоятельно изучить методики тестирования по книгам, мануалам и видео, а затем попытаться устроиться на работу на junior-позицию. Этот вариант рабочий, но займёт много времени.
Более простой способ стать тестировщиком — пройти обучение на онлайн-курсах. Вы освоите необходимые техники и инструменты, получите практический опыт тестирования крупного проекта. После обучения наши успешные студенты становятся специалистами middle-уровня.