Профессия тестировщика сейчас популярна среди людей, которые планируют попасть в IT-сферу. Принято считать, что тестировщик — это человек, который «ловит» баги и портит жизнь программистам. А еще считают: для того чтобы войти в профессию, не нужны особые знания — достаточно пройти курсы. В статье разбираемся, так ли всё просто на самом деле и как стать тестировщиком после курса в онлайн-университете Skypro.
Промокод: Geek — 10% на любой курс Skypro, не суммируется с другими промокодами
Содержание
Разберемся в терминологии
В вакансиях, статьях и литературе можно встретить несколько понятий, которые относятся к тестированию: «QA-тестировщик», «тестировщик ПО», «QA-инженер». Разберемся, что они означают и есть ли разница между этими профессиями.
Сначала выясним, какие есть понятия в сфере контроля качества.
QA — это сокращение от английского Quality Assurance, «обеспечение качества». Термин означает целый комплекс действий на всех этапах разработки, выпуска и эксплуатации программного обеспечения. То есть это максимально широкое понятие, которое подразумевает качество в целом и используется не только для процессов, связанных с разработкой. Например, если компания разрабатывает и продает программное обеспечение, то работа отдела продаж тоже входит в компетенцию QA.
Второе понятие, которое часто встречается в статьях, — QC. Оно означает Quality Control, «контроль качества» — конкретные действия по проверке актуального состояния программного продукта и его соответствия требованиям.
И последнее — тестирование программного обеспечения. Это одна из техник контроля качества. Конкретные действия по планированию тестовых активностей, дизайну тестов, их выполнению и анализу полученных данных. Это и есть то, чем занимается тестировщик.
В статье будем говорить именно о таких обязанностях и использовать термины «инженер по тестированию», «QA-тестировщик», «тестировщик ПО», «QA-инженер» в значении «тестировщик».
Читайте также: [Инструкция] Тестируем производительность компьютера: используем популярные программы +ОтзывыЧем занимается тестировщик
Главная задача тестировщика — проверить, как работает программа. Инженер по тестированию ищет ошибки и уязвимости в новых сайтах и приложениях, чтобы с ними не столкнулись пользователи.
Но для этого недостаточно просто понажимать на все кнопки подряд и постараться совершить ошибку в надежде, что система отреагирует на нее не так, как задумал разработчик.
Перед тем как начать проверку системы, тестировщик изучает требования к ней. Из них он понимает, как система должна работать. На основе этого тестировщик составляет тест-кейс — пошаговую инструкцию для проверки программы на соответствие требованиям.
Ошибка может «вылезти» в любой момент, поэтому важно придумать такие тест-кейсы, которые включают самые нестандартные ситуации. Хорошо, если при входе в профессию рядом будут эксперты, которые подскажут: что конкретно в логике написания не так или почему код не сработал. Во время обучения важно не просто получить инструкцию, что конкретно надо написать или заменить, а научиться понимать, как «работает» код и какую последовательность функций он выполняет.
Затем тестировщик пошагово выполняет тест-кейсы: прорабатывает сценарии действий пользователя, проверяет, как программа или приложение работает в разных операционных системах и на разных устройствах, ищет и документирует ошибки.
Читайте также: Обучение программированию на Unity. ТОП-22 Онлайн-курса + 4 БесплатныхКак развиваться тестировщику
Путь автоматизации тестирования. Тестирование бывает ручное и автоматизированное. При ручном тестировании человек сам нажимает на кнопки и совершает действия в программе по тест-кейсу. В автоматизированном варианте тестировщик пишет тест-кейсы в специальной программе, которая их выполняет. Это ускоряет процесс, потому что ручная работа всегда занимает больше времени.
Обычно тестировщики начинают свой карьерный путь с ручного тестирования, а затем осваивают языки программирования и пишут автоматические тесты.
Вертикальный рост. Начальная позиция тестировщика — junior (джуниор), или младший специалист. Он тестирует программы вручную по готовым тест-кейсам. В это время привыкает работать с требованиями заказчиков, начинает осваивать языки программирования и делает первые шаги в автоматическом тестировании.
На такую позицию может претендовать выпускник курса «Инженер по тестированию» от онлайн-университета Skypro. Курс дает не только теоретические знания, но и возможность практиковаться на реальных рабочих задачах. В результате специалист умеет:
- писать тестовую документацию и составлять отчеты о тестировании;
- тестировать веб-, мобильные приложения и API;
- использовать инструменты для тестирования;
- проводить нагрузочное тестирование.
Если джуниор хорошо себя зарекомендует, то через два-три года его могут перевести на позицию middle (мидл) — специалиста. На этом этапе он способен самостоятельно составлять тест-кейсы и заполнять документацию, то есть полностью отвечать за конкретный проект.
Еще через год-полтора успешный мидл может претендовать на должность senior (сеньор), или старшего специалиста. У такого сотрудника более широкий круг задач. Не все они связаны непосредственно с тестированием. Старший специалист планирует работы по тестированию, контролирует работу младших.
Еще через какое-то время можно стать teamlead (тимлид) — руководителем команды тестировщиков. На этой позиции требуются не только профессиональные компетенции и умение решать нестандартные задачи, но и навыки лидера. Руководитель команды не столько тестирует сам, сколько в целом выстраивает процесс и руководит им.
Горизонтальный рост. Часто тестировщики идут по пути развития внутри профессии и уходят в конкретную специализацию. Например, можно стать юзабилити-тестировщиком и проверять системы и приложения на их удобство для пользователя.
Еще один вариант развития — уйти в разработку, но для этого тестировщику нужно много учиться.
Читайте также: Обучение программированию на Python с нуля. ТОП-35 Онлайн-курсов + 5 БесплатныхПлюсы и минусы профессии
Попробуем выделить плюсы и минусы в профессии тестировщика.
Сложно в полной мере ощутить плюсы и минусы, пока не вошли в профессию. Но уже во время обучения вы поймете, чем живет и дышит специалист по тестированию, примерите работу на себя и решите, готовы ли заниматься этим дальше.
Читайте также: Обучение программированию с нуля. Где изучать и какой язык выбрать + Бесплатные курсыПрофессиональные знания
Если каких-то знаний не хватает, вы можете получить их, уже работая тестировщиком.
Вот что нужно уметь тестировщику:
- хорошо ориентироваться в операционной системе, работать с командной строкой;
- уметь создавать тест-кейсы;
- иметь опыт автоматизации тестирования;
- уметь работать с базами данных и знать язык запросов SQL;
- уметь работать с программами JIRA/Confluence — с их помощью тестировщики управляют ходом работы, контролируют процесс устранения багов, хранят необходимую информацию об этапах, результатах тестирования и параметрах оценки;
- уметь работать с системами контроля версий, например Git;
- знать английский язык для чтения профессиональной литературы.
Чтобы качественно обучать будущих тестировщиков, создатели курса «Инженер по тестированию» исследовали 2260 вакансий, составили список самых частых требований к тестировщикам без опыта работы и включили их в программу.
В результате на курсе у будущих QA-инженеров формируют четыре основных навыка:
- знание теоретических основ тестирования;
- тестирование API;
- тестирование мобильных приложений;
- работа с основными инструментами тестировщика.
Важные личные качества
Кроме прикладных знаний тестировщик должен обладать личными качествами, которые помогут ему успешно справляться со своими обязанностями.
- Внимательность и склонность к монотонной работе. Тестировщику часто приходится выполнять однотипные действия и при этом не терять внимательности, чтобы вовремя заметить ошибку.
- Сильные аналитические способности и развитое критическое мышление. Хороший тестировщик не только фиксирует ошибки, но и может их проанализировать и сделать вывод — например, найти какую-то закономерность.
- Дотошность и внимание к мелочам. Работать «крупными мазками» не получится: задача тестировщика — цепляться за любую мелочь.
- Ответственность. Тестировщик — тот, кто отвечает за качество продукта. Если специалист пропустит ошибку, ее найдет пользователь. Поэтому тестировщику нужно обладать здоровым чувством перфекционизма.
- Умение четко выражать мысли и убеждать людей. Этот пункт выглядит немного странно: кажется, что тестировщик не общается с людьми, а только нажимает на кнопки. На самом деле это не совсем так. Тестировщик много взаимодействует внутри команды: с менеджером продукта, аналитиком, разработчиками. Коммуникативные навыки пригодятся, чтобы убедить коллег в своей правоте. А еще тестировщик пишет отчеты, и чем точнее он опишет ошибку, тем проще будет разработчику ее исправить.
Личные качества тоже можно прокачать на курсах — во время работы в команде, с одногруппниками и наставником.
Зарплата и востребованность
По данным на сентябрь 2022 года, средняя зарплата тестировщика — 99 000 ₽. В эту статистику попали вакансии тестировщиков игр, приложений, стажеров и младших тестировщиков.
По количеству вакансий лидируют крупные города, где много компаний — разработчиков ПО: Москва, Санкт-Петербург, Самара, Новосибирск, Казань. Самые высокие зарплаты в Москве, Санкт-Петербурге, Нижнем Новгороде, Самаре, Екатеринбурге.
На американском рынке труда профессия тестировщика оплачивается высоко. По данным Trud.com, среднемесячная зарплата Quality Assurance Tester — $21 284.
Где искать работу
В первую очередь ищите на популярных агрегаторах:
- HH.ru.
- Хабр Карьера.
- Geekjob.
- getmatch.
- БУДУ.
Но не останавливайтесь только на них. Если вы знаете, в каких компаниях хотели бы работать, — посмотрите их разделы с вакансиями или отправьте резюме напрямую рекрутеру.
Если вы учитесь на курсе «Инженер по тестированию» в онлайн-университете Skypro — можете рассчитывать на помощь в поиске работы. Вы составите резюме с опытным рекрутером, получите практические советы от карьерного консультанта и сможете подготовиться к реальным собеседованиям на тестовых интервью.
Где учиться
Курсы
При выборе опирайтесь на количество обученных студентов и их отзывы. Еще обращайте внимание на программу обучения: она должна включать практику.
У онлайн-университета Skypro есть такой курс — «Инженер по тестированию». За восемь месяцев освоите профессию тестировщика, занимаясь по десять часов в неделю.
Вузы
По данным сайта Учеба.ру, отдельной специальности тестировщика в вузах нет. Можно учиться на направлениях «прикладная математика и компьютерные технологии», «программная инженерия», «информатика и вычислительная техника», «компьютерные науки и анализ данных» и других.
Вот неполный список вузов, где можно учиться:
- Московский университет имени С. Ю. Витте.
- Московский физико-технический институт.
- Московский государственный технический университет им. Н. Э. Баумана.
- Университет науки и технологий «МИСиС».
- Национальный исследовательский университет «Высшая школа экономики».
- Национальный исследовательский ядерный университет «МИФИ».
Выдающиеся личности
Ольга Назина (Киселёва) — тестировщик, автор портала Testbase — школы начинающих тестировщиков, автор Багреда — сервиса проверки названия багов, ведет курсы для тестировщиков. Блог
Артём Русов — тестировщик из Беларуси, запустил расширенный курс «Тестировщик с нуля», ведет ютуб-канал. Сайт: Artsiom Rusau QA Lif, Ютуб-канал: Artsiom Rusau QA Lif
Роман Савин — автор самой известной книги по тестированию на русском языке «Тестирование dot com», Ютуб-канал Романа Савина
FAQ (Частые вопросы о профессии)
И да и нет. С одной стороны, профессия не требует обязательного высшего образования. С другой — без некоторых технических знаний всё-таки не обойтись. Если вы прочитали пару статей и посмотрели ролик на ютубе, скорее всего, этого будет мало.
Получится: программа рассчитана на новичков без опыта программирования и технического образования. При правильном подходе к обучению вы достигнете результатов даже без специальных знаний. В этом помогут преподаватели-эксперты и наставники, которым вы сможете задавать вопросы.
Да, тестировщиком стать проще. Но сложность разрабатываемых программ и систем всё время растет, поэтому порог входа уже не такой низкий, как был некоторое время назад.
Универсального ответа нет. Могут сработать несколько стратегий:
откликаться на вакансии, где опыт не требуется;
быть готовым работать за невысокую зарплату;
составить портфолио: включить в него учебные задачи с курса или самостоятельно протестировать программные продукты с открытым кодом.
Полезные ссылки для тестировщиков
Сайты
- Сайт Святослава Куликова — книга или бесплатный курс по основам тестирования. У автора академический подход, но в целом курс полный и грамотный.
- Testbase.ru — на сайте описан путь обучения тестировщика и много полезных ссылок.
- Лекции по тестированию — лекции с практическими заданиями от Севы Брекелова.
Телеграм-каналы
- https://t.me/booksqa — здесь можно найти разные книги по тестированию.
- https://t.me/qaevents — канал с анонсами событий, связанных с тестированием.
- https://t.me/test_pass — тестировщица и преподаватель по тестированию пишет интересно о разных аспектах профессии.
- https://t.me/testing_and_life — еще один канал про работу тестировщика и просто про жизнь.
- https://t.me/qa_load — канал, где общаются тестировщики.
Ютуб
- Техники тест-дизайна. Доклад Артёма Быковца.
- Artsiom Rusau QA Life — канал с бесплатным курсом по тестированию.
- Видеолекции по тестированию от Mail.ru.
Блоги
- Блог Ольги Назиной — блог тестировщицы, автора портала Testbase, Багреда — сервиса проверки названия багов.
- Dan Ashby’s Blog — англоязычный блог скорее в целом о качестве, чем конкретно о тестировании. Но есть много полезных советов, как сделать любой процесс лучше.
- Software Testing News — англоязычные новости из мира тестирования и IT в целом.
- Google Testing Blog — англоязычный блог Google про тестирование.
Книги
- A Practitioner’s Guide to Software Test Design — базовая книга по тестированию на английском языке.
- «Тестирование dot com» — одна из главных книг по тестированию на русском языке.
Бесплатные курсы без практики
- Бесплатные теоретические курсы на платформе Stepik: «Введение в тестирование. Women In Tech + TestIT + ПРОСТО», «Основы тестирования игр».
- Ulearn.me — сайт с бесплатными курсами по тестированию и программированию.
Статьи
«Техники тест-дизайна» — статья на английском языке.