Профессия инженер по тестированию

Содержание

Курсы

Онлайн-курсы LearnQA

Сервис LearnQA предлагает освоить профессию тестировщика мобильных приложений в режиме онлайн. Доступен широкий выбор курсов для новичков и практикующих тестировщиков, которые помогут обучиться с нуля или усовершенствовать знания. Можно записаться на бесплатный курс, после освоения платной программы выпускники получают сертификаты.

Онлайн-университет Skillbox

Университет реализует девятимесячный курс для тестировщиков мобильных приложений. В программу включено ручное и автоматическое тестирование, она представляет интерес для тех, кто входит в профессию с нуля. Выпускники получают сертификаты и помощь при трудоустройстве.

Какие качества, навыки и инструменты необходимы тестировщику?

Вот личные качества, которые играют важную роль для этой профессии:

Аналитический склад ума
Вам придется работать с большими объемами информации, разрабатывать четкую последовательность действий и анализировать результаты.
Внимание к деталям. Тестировщик должен обращать внимание на малейшее отклонение от того, каким видят продукт разработчики и проверять любые возможные варианты

Усидчивость. Приходится выполнять большой объем рутинных операций и тщательно следить за малейшими ошибками.
Критическое мышление

Даже если продукт выглядит идеальным, важно убедиться в этом на практике.
Ответственность и системный подход. Важно соблюдать регламенты и сценарии работы, добиваться поставленного результата и предоставлять итог своей работы в виде четких и понятных рекомендаций

Не просто найти ошибку, а подробно описать, при каких обстоятельствах и почему она возникает.
Эмпатия и внимание к людям. Это нужно, чтобы абстрагироваться от сугубо технических сценариев и инструкций и понять, как действует обычный человек, удобно ли ему будет работать с продуктом, с какими сложностями он столкнется.
Навыки коммуникации. Нужно уметь общаться и убеждать разработчиков и других участников команды в вашей правоте и необходимости внести правки.
Стремление к саморазвитию. В профессии тестировщика важно постоянно осваивать новые методы и технические приемы, чтобы хорошо разбираться в продукте, его слабых и сильных сторонах.

Технические навыки и инструменты, которыми должен владеть тестировщик:

  • Основы программирования и редакторов кода: VScode, Pytest, Gitlab, XML, CSS, JavaScript.
  • Знание ключевых систем управления проектами в разработке — Waterfall, Scrum и Kanban.
  • Представление о том, как создаются пользовательские интерфейсы — в плане разработки, UX UI-дизайна.
  • Работа с системами баг-трекинга (обнаружения ошибок): Redmine, Jira.
  • Знание инструментов мониторинга HTTP/HTTPS-трафика.
  • Навыки работы с базами данных — такими, как MySQL, PostgreSQL, MS SQL.
  • Навыки составления тест-планов и тест-кейсов с помощью TestRail, Zephyr, TestLink и других сервисов.
  • Знание особенностей всех популярных ОС и браузеров — мобильных и десктопных.
  • Представление о клиент-серверной архитектуре.
  • Умение работать с системами контроля версий — например, CVS или Git.
  • Умение работать с системами автоматического тестирования веб-приложений, тестирования нагрузки и функционала — такими, как HP-UFT, Sahi, Selenium.
  • Хороший технический английский.

Как получить профессию тестировщика

Согласно опросу на Software-Testing.ru, в тестировщики приходят из самых разных сфер: ИТ-администраторы, программисты, дизайнеры, юристы, экономисты. Проще всего тем, кто уже знаком с основами программирования и веб-разработки, остальные могут научиться с нуля. Однако после стажировки или самостоятельного обучения вы можете рассчитывать максимум на позицию junior, и то — при большом везении. Это значит, что вам придется вручную проводить тестирование по готовым тест-планам — самая рутинная и монотонная работа.

Единого рецепта, как быстро можно освоить профессию тестировщика, нет: кто-то способен все освоить сам, кто-то проходит неоплачиваемую стажировку, кому-то помогают опытные коллеги. Самый простой и надежный вариант —пройти онлайн-курсы, где можно всему научиться у практиков. После курсов у вас будет практический опыт и все шансы для позиции уровня middle: то есть работы с автоматизированными тест-системами и собственными тест-планами.

Будущее тестировщика

  • Разработка программного обеспечения — логичный и не самый сложный путь для тех, кто увлечётся языками программирования и захочет не только ковырять чужой код и готовый проект, но и создавать что-то внутри команды.
  • Руководитель проекта. Отличное знание проекта в целом, понимание потребностей и требований клиентов — прямой путь к этой точке.
  • Скрам мастер — интересный разворот, который у тестировщиков хорошо удаётся благодаря опять же знаниям проекта в целом и умениям жёстко планировать сроки работ.
  • Бизнес-аналитик, внедренец — денежные, но не столь технические должности для ребят с прокачанными коммуникативными навыками.

Плюсы и минусы работы тестировщиком

▍Плюсы

  1. До определённого момента работа тестировщика проще остальных технических специальностей и доступна многим, кому интересна ИТ-сфера. Переходить ли рубеж к тому интервалу, где работа становится максимально сложной, решение каждого. Если дальше не пойдёте, вас из тестирования не выгонят, вы всё равно будете востребованы.
  2. Потребность в тестировщиках не исчезнет до тех пор, пока есть информационные технологии, связь, интернет, роботы, автопилоты и т.д.
  3. Тестирование — не столь изученная область, как программирование. Если у вас есть талант и трудолюбие, вы сможете сказать своё слово миру (написать книгу, создать методологию, преподавать и т.д.).
  4. Карьера тестировщика довольно свободная: можно сидеть в офисе с гибким графиком, можно работать удалённо, а можно стать фрилансером, набрать проектов и тестировать их по сдельной оплате.
  5. Тестировщику легче вернуться на работу после долгого перерыва, например, из опыта создания своего стартапа, фриланса, декрета, иных обстоятельств.
  6. Работу в тестировании можно сочетать с учебой без вреда для обоих видов деятельности.
  7. Вы научитесь «видеть продукт» со всех сторон, узнаете все функциональные возможности, посмотрите на софт глазами инженера и глазами потребителя. Это прямой путь в менеджеры продукта. Общая картина продукта поможет вам в любом случае — например, если вы решитесь уйти в разработку.

▍Минусы

  1. Команда недолюбливает тестировщиков 🙂 Нет, ну вы вот сами прикиньте: вы делаете продукт, пишете код, документацию, а потом на него нападает кучка коллег и заводит баг за багом на каждую мелочь. Ну как это вынести в адекватном состоянии?! Хуже только быть единственным тестировщиком в команде — тогда всё, ты конченая сволочь. Шутки шутками, но нередко команда считает, что именно тестировщики задерживают выпуск релизов и клиентских сборок. В общем, не любят люди, когда находят ошибки в их работе. 
  2. На первом этапе вы работаете с повторяющимися задачами, иногда работать становится невыносимо скучно.
  3. Тестировщики ищут ошибки разработчиков, искать ошибки тестировщиков некому. Поэтому вы будете крайними в некоторых неприятных ситуациях.
  4. Работа тестировщиков часто бывает незаметна руководству — придётся привыкнуть быть серым кардиналом, невидимым героем.
  5. Сверхурочная работа — бич тестировщиков. Рано или поздно вам будет нужно срочно оттестировать релиз или сборку, которую нужно выкатить завтра или «вот прям щас» или же остаться и проверить внесённые программистами исправления. И вы останетесь, а вот оплачивается такой героизм далеко не всегда (я вообще не встречал).
  6. На тестировщиках лежит огромный груз ответственности за полноту и охват тест-планов — если что-то упустить, отвечать уже придётся за пропущенные баги.

Особенности профессии

Условно всех тестировщиков мобильных приложений можно разделить на две группы:

  • альфа, которые тестируют программный продукт в то время, когда она находится на стадии разработки;
  • бета, который тестирует практически готовую версию мобильного приложения.

Альфа-тестировщики чаще всего являются сотрудниками компании-разработчика, в роли бета-тестировщиков могут выступать как профессиональные программисты, так и обычные пользователи, с нетерпением ожидающие релиз. В обязанности тестировщиков мобильных приложений входят следующие виды работ:

  • осуществление контроля качества мобильных приложений;
  • разработка пользовательских сценариев для устройств на ОС iOS/Android, которые ложатся в основу тестирования;
  • использование автоматических тестов;
  • фиксирование выявленных ошибок.

Тестировщики мобильных приложений могут быть штатными сотрудниками компании-разработчика. Нередко компании набирают независимые тест-группы, что позволяет получить прозрачный результат. Огромным бонусом является знание языков программирования Swift, Kotlin, Objective-C и других, позволяющих оценивать не только клиентскую часть, но и backend.

Кто всё это делает: немного о профессии

Тестированием программы занимаются специалисты по контролю качества программного обеспечения — QA-инженеры. У них есть разные специализации: тестировщики баз данных, специалисты автоматизированного тестирования, аналитики, разработчики тестов, специалисты по безопасности приложений и другие.

Если проект большой, над ним работает целая команда: одни тестировщики готовят тесты, другие проверяют их полноту и логику, третьи занимаются непосредственно тестированием. Над небольшими задачами может работать один специалист, причём удалённо.

Тестировщики — среди самых востребованных сейчас специалистов-айтишников. Появляется множество новых программ, и каждой из них нужен контроль качества. QA-специалистов нанимают крупные компании-разработчики ПО, они могут стать фрилансерами и работать сразу на несколько фирм.

Как показывает статистика работных сайтов, на рынке не хватает разработчиков автотестов, а специалистов ручного тестирования достаточно. Средняя зарплата тестировщика в Москве больше 120 тысяч рублей, а по регионам — примерно 55–60.

На скриншотах ниже — данные с HeadHunter. В сентябре 2020 года там было 3000 открытых вакансий тестировщика.

В описаниях вакансий работодатели предлагают зарплаты от 45 до 250–300 тысяч рублей.

В среднем по России на одну вакансию приходится шесть резюме от ищущих работу. Чаще всего нужны опытные тестировщики, но есть места и для начинающих.

Описание профессии тестировщика ПО

Тестировщик ПО – это специалист, занимающийся разнообразным тестированием программного обеспечения на предмет сбоев, ошибок и обеспечивающий качество готового продукта.

Название профессии образовано от английского слово “Test”, переводящееся как «проверка», «испытание» или же просто уже устоявшееся в русском языке «тестирование».

Существует несколько мнений о работе тестировщика, одни люди считают, что эта профессия представляет собой монотонную и однообразную проверку всего и вся по готовым наработкам, другие же утверждают, что ни одна инструкция не сможет охватить весь спектр возможных ошибок и профессия, несомненно, является творческой, так как заставляет активно работать головой и подходить к процедуре проверок с самых разных сторон. Правда, как обычно, лежит где-то посередине и профессия тестировщика действительно гармонично сочетает в себе оба подхода.

Тестировщики занимаются разработкой методов, планов, подходов и графиков тестирования. Они самостоятельно разрабатывают большое количество сценариев тестирования и воплощают их в жизнь как собственноручно, так и с использованием автоматизированных методов тестирования.

Основной задачей, ставящейся перед тестировщиками ПО является моделирование различных повседневных и форс-мажорных ситуаций, которые могут произойти при использовании продукта, выявляя при этом недостатки, дефекты и допущенные программистами ошибки. Соотнося начальные планы, описание функциональности программы и полученные в результате тестирования результаты тестировщики документируют каждую нештатную ситуацию, момент её появления и способы повторения для передачи программистам на доработку.

Итогами работы тестировщика в результате пользуется огромное количество клиентов, так как сфера применения его знаний и навыков практически неограниченна: веб-сайты, все виды программ, компьютерные игры, микропрограммы управления бытовой и промышленной техникой и так далее.

Иногда профессию «Тестировщик ПО» путают с профессией «QA-инженер» которые довольно схожи, но последняя имеет более широкий спектр обязанностей и обеспечивает качество продукции на протяжении всего жизненного цикла: от планирования и разработки до выпуска и поддержки в эксплуатации. Тестировщик же занимается проверкой продукта уже на последних этапах разработки и выпуска новых версий.

Тестировщик это кто. Чем занимается асессор

В чем заключается работа тестировщика Яндекс, Гугл и других подобных компаний, можно понять, просто прочитав название профессии. Эти специалисты занимаются тестированием различных web продуктов. Сложнее было бы догадаться если бы вместо «тестировщика» мы бы использовали слово «асессор», что, однако является одним и тем же.

Тестировщик-асессор отвечает за проверку правильности работы информационного продукта, соответствию его функциональным особенностям. Его работа заключается прежде всего в обнаружении ошибок и неисправностей, а затем уведомлении о них разработчиков. Результатом является улучшение качества или создание нового программного обеспечения. В упрощенном варианте эта работа чем то напоминает работу контент менеджера. И если вы, прочтя эту статью поймете, что вы пока не готовы к такой работе, то можете начать с изучения заработка редактором сайта.

Почему тестировщик и QA не одно и то же

На практике основные задачи тестировщика отличаются от обязанностей QA-инженера. Тестировщик запускает тесты, проверяет и сверяет фактический результат с ожидаемым. У QA-инженера — масса задач для поддержания качества продукта. Общение с командой или заказчиком, планирование работ по тестированию, генерация специфической проектной документации и множество других тасков. Но если относиться к такой работе, как к длительному процессу развития, то большая часть умений приходит к тестировщику с опытом. Он участвует в командных активностях, постепенно получает доступ ко все большему количеству интересных заданий и усиливает свою экспертизу. Потихоньку начинающий тестировщик приближается к гордому званию настоящего QA.

Опыт получен. В запасе появились новые скилы. Что дальше? Всегда можно придумать другой подход к тестированию того, что уже сотню раз проверяли, и найти то, что можно оптимизировать.

QA — в первую очередь инженер

Для многих это звучит непривычно и вызывает небольшое сопротивление. Не стоит нервничать 🙂 Специалист каждый новый таск воспринимает, как челлендж, рвется его преодолеть с помощью имеющегося тулсета? Поздравляем, Вы нашли идеального QA. Столкнувшись с незнакомой задачей, тестировщик скажет: «Я такого не умею. Найдите того, кто умеет», а инженер  ответит: «Дайте я разберусь и объясню, как могу решить эту задачу». В моей команде есть несколько специалистов, которые постепенно начали разделять и поддерживать этот подход. В тот момент, когда они приняли новые правила игры, когда страха неудачи не существует, а очередная задача — это всегда увлекательный и посильный челлендж — они стали получать от работы больше удовольствия и постоянный респект от коллег. Ребятам достаются новые, «непонятные» таски и в них они находят для себя постоянный рост.

Какие активности доступны с описанным выше складом ума? Любые! Ограничений практически нет. За любую задачу можно взяться, почерпнув из нее что-то новое. Например, виды тестирования, помимо простого мануального, это же кладезь интересных задач:

  • автоматизация функциональных проверок;

  • перформанс;

  • секьюрити;

  • аксессибилити.

Среди других активностей, могу выделить такие:

  • вникание в код приложения для поиска новых вариантов проверок или отсечения дубликатных;

  • применение новых техник тест-дизайна к существующим проверкам;

  • построение новых пайплайнов тестирования.

Этот список можно продолжать. Каждый специалист найдет что-нибудь полезное для профессионального роста, руководствуясь своими навыками и интересами. Чтобы получать доступ ко все новым активностям и таскам. Крутой инженер умеет все, а с чем еще не знаком, разберется и сделает самостоятельно.

Единственным ограничителем может стать проектная ситуация и команда. Кто ищет, тот всегда найдет. При большом желании, заинтересованный в личностном развитии QA-специалист, всегда будет охотно браться за новые вызовы, стараться проявлять себя в интересных задачах с необычной стороны. Проверено на собственном опыте и команде. Лично мне хотелось бы, чтобы каждый, кто покоряет профессию QA, четко понимал — это не только про тестирование. Разнообразие активностей в этом направлении подходит практически каждому, кто готов на старте быть усидчивым и внимательным. Нужно просто немного изменить склад ума, чтобы тестировщик позволил себе стать инженером. Тогда перед ним мгновенно откроются десятки карьерных возможностей!

Навыки и умения для работы тестировщиком

И немного о том, какими навыками и знаниями должен обладать специалист, который занимается тестированием.

Такой работник должен знать обязательно основы программирования, быть на ты с современными компьютерными технологиями, знать принципы и методы тестирования, уметь составлять сценарии, работать с ними и составлять отчеты для разработчиков.

Не обойтись здесь без хорошего знания языков программирования и умения работать с такими системами, как Bugzilla, Jira и другие. Тестировщик должен разбираться в автоматических тестах, уметь их настраивать, а также знать основы ручного тестирования.

Кроме профессиональных навыков, специалист должен обладать такими качествами, как коммуникабельность, умение работать в команде, усидчивость, внимательность к деталям и креативность. Это должен быть одновременно человек с техническим мышлением и творческой жилкой.

Какие типы или виды тестирования используются в QA процессе?

Теперь, когда мы понимаем, что представляет собой процесс QA, давайте поговорим о различных типах тестов, используемых при тестировании программного обеспечения. Да, их очень много. Но волноваться не стоит. Как только вы поймёте, по каким принципам тесты делятся на группы, вы легко сможете в них ориентироваться.  

Функциональные и нефункциональные тесты

Основные категории тестов — это функциональные и нефункциональные тесты.

При функциональном тестировании мы проверяем, работает ли приложение должным образом. Другими словами, мы проверяем, соответствует ли фактический результат ожидаемому результату.

В нефункциональном тестировании мы проверяем, как наше приложение работает в различных условиях. Нагрузочные тесты, тесты безопасности, стрессовые тесты и тесты удобства пользования — все они попадают в эту категорию.

Знание исходного кода

Если тестировщики знают исходный код до тестирования, речь идет о тестировании “белого ящика” (white box testing). В противном случае мы имеем дело с тестированием “черного ящика” (black box testing), когда тестировщики оценивают только поведение приложения, не зная его внутреннего устройства. Тестирование “серого ящика” (grey box testing) представляет собой комбинацию этих двух подходов. Тестировщикам предоставляется ограниченная информация о внутренней структуре системы.

Подход к выполнению тестов

Некоторые тесты выполняются людьми, и мы говорим о ручном тестировании. При этом подходе тестировщики выполняют тестовые сценарии и создают отчеты о результатах.

Другие тесты выполняются компьютерами. Инженеры по автоматизации тестирования создают сценарии автоматического тестирования и пишут код, который многократно проверяет программное обеспечение на наличие ошибок. Здесь мы имеем дело с автоматическим тестированием.

У каждого из этих подходов есть свои плюсы и минусы. Они дополняют друг друга. Например, ручное тестирование лучше подходит для проверки небольших изменений. Во время ручного тестирования тестировщики часто могут найти такие проблемы, которые остались бы незамеченными, если бы они полагались только на автоматизированные тесты. Ручное тестирование не требует глубоких знаний языков программирования и его достаточно легко освоить. 

В то же время, при работе над большими приложениями, тестирование без использования автоматических тестов может занять слишком много времени. Мы также не можем исключить вероятность человеческих ошибок.

Для каждого отдельно взятого проекта QA специалисты определяют идеальный баланс между ручным и автоматическим тестированием.

Фаза разработки программного обеспечения

Мы разделяем тесты на модульные, интеграционные, системные — в зависимости от того, на каком этапе цикла разработки программного обеспечения находится команда.

Вот еще несколько типов тестов, с которыми вы часто будете сталкиваться в публикациях:

Дымовые тесты (smoke tests) предназначены для проверки базовой функциональности приложения. Это быстро выполнимые тесты, с помощью которых тестировщики следят за тем, чтобы основные функции системы работали правильно.

Регрессионные тесты (regression tests)  помогают проверить, работает ли приложение так, как оно должно работать, после внесения каких-либо изменений, например исправления дефектов.

Нагрузочные тесты (load tests) необходимы для проверки приложения как при средней, так и при пиковой нагрузке.

Кроссбраузерное / кроссплатформенное тестирование помогает анализировать поведение приложения в различных браузерах и системах.

Конечно, это не все типы тестов, которые используются в процессе разработки программного обеспечения. Но знание этих основных категорий поможет вам лучше ориентироваться в теме QA.

Почему люди хотятстать тестировщиком?

Тестировщиками становятся даже те, у кого за плечами гуманитарное образование или опыт работы в другой сфере. Знание теории и умение работать с программами обязательны, но учатся этому на курсах или самостоятельно.

Тестировщик ПО в SmartSeeds, в прошлом учитель, военный и работник метрополитена, подчеркивает: 80% успешного обучения — самообразование. Это книги, вебинары, видео уроки на YouTube.

Из продавца компьютерной техники — в тестировщика: делимся мотивирующим видео от блогера Стаса Пешкура. Стас подчеркивает: нужно подготовиться к тому, что первое место работы даст не заработок, а опыт, который пригодится для вхождения в айти-среду.

Главные причины, по которым выбирают профессию тестировщика:

  • достойная зарплата (от $600-700 и выше);
  • долгосрочная перспектива карьерного продвижения;
  • возможность быстро переключиться с фриланса на постоянную работу в офисе.

Тестировщик уровня Middle и выше осваивает популярные языки программирования, прокачивает уровень своего английского. Это хорошее подспорье для дальнейшей переквалификации или подъема на новую ступеньку.

Как развиваться тестировщику

Путей для карьерного роста много. Некоторые начинают с тестирования, чтобы потом уйти в разработку, но это не единственный вариант — можно развиваться и внутри профессии.

Младший специалист тестирует программы вручную по готовым тест-кейсам. Чтобы из «обезьянки» стать мидлом, нужно развиваться: досконально изучать проект, знать язык кода и основы автоматического тестирования.

Если джуниор хорошо себя зарекомендует, то через 2-3 года получит повышение и станет мидлом. Будет самостоятельно составлять тест-кейсы и заполнять документацию.

Ещё через год-полтора успешный мидл может претендовать на должность старшего специалиста (Senior QA Engineer). Его круг задач расширяется: синьор планирует работы по тестированию, контролирует работу джунов.

Лет через пять можно стать тимлидом — руководителем команды тестировщиков. От тимлида требуются профессиональные компетенции, навыки менеджмента, умение решать сложные задачи.

Так происходит карьерный рост специалиста по вертикали. Но на практике тестировщики часто выбирают развитие внутри профессии — например, специализации по тестированию:

Прагматизм в работе

ФОТО: FIZKES / SHUTTERSTOCK

Сабина Хасанова

SOFTWARE QUALITY ASSURANCE ENGINEER В SETKA

«Я поняла пользу автотестов год назад, как раз на зимовке в Таиланде. Мне нужно было после очередного релиза проверить, не поломаются ли посты у крупных клиентов. Я вручную открыла большое количество рандомных постов, чтобы убедиться, что не слетели стили, не поехала верстка. Из-за этого у меня начал зависать ноутбук, и какое-то простое действие заняло два часа. Через день я села и за полчаса написала небольшой скрипт, который запускает ссылки сразу открытыми и с консолью. Теперь это занимает пару минут. Когда ты можешь внести автоматизацию в рутину и экономить время себе и менеджерам, это очень круто».

«Иногда я автоматизирую что-то, потому что вижу, что менеджер часто этим пользуется. Ты тратишь время на автоматизацию, но она сэкономит много времени в будущем. Когда я делаю кроссбраузерное тестирование, я пишу функции браузера в консоли и автоматизирую свою работу даже в мелочах. Это творческий процесс».

QA-инженер / тестировщик это

Как стать тестировщиком

Куда пойти учиться, чтобы освоить эту профессию и что нужно знать, чтобы начать работать по специальности? Давайте разбираться.

Начнем с того, что профильного вуза для тестировщиков нет. Поэтому у нас остается два варианта – либо стараться освоить специальность самому, либо воспользоваться обучающими курсами. А какой вариант выбрать – это уже индивидуальный вопрос, на который предстоит ответить каждому самостоятельно. Тут нужно учитывать и финансовые возможности, ведь хорошие курсы с опытными кураторами стоят недешево, и не забывать о своих личных качествах – если у вас проблемы с самодисциплиной не стоит надеяться на быстрый результат в самостоятельном образовании. Да и сертификат может стать дополнительным плюсом на собеседовании. Хотите взвесить все за и против – читайте наш материал: Онлайн-обучение: преимущества и недостатки

Если вы решили остановить свой выбор на специализированных курсах, далее по тексту мы подготовили для вас большую подборку лучших учебных центров и программ, а пока давайте разберемся с тем, какими знаниями и базовыми инструментами нужно обладать для старта карьеры.

Чтобы претендовать на должность тестировщика, необходимо:

Знать основы тестирования ПО (понимать основные этапы разработки, и на каких из них вы будете включаться в работу, знать необходимый набор тестов и особенности их проведения, понимать, как правильно описывать ошибки и как использовать различные практики тестирования).

Уметь работать с системами баг-трекинга, такими как Jira, Redmine, Bugzilla, а также такими программами как Charles или Fiddler.
Хотя на старте карьеры от новичков не требуют знание языков программирования, вы все равно должны понимать хотя бы теоретические основы разработки.
Многие работодатели требуюn высшее образование по технической специальности.

Логическое мышление и способность «думать, как преступник»

Навык определения багов можно тренировать в любое время, просто постарайтесь обращать внимание на ошибки в программах, которыми вы пользуетесь ежедневно.

Знание английского. Практически во всех IT-специальностях знание английского языка будет полезным, и тестирование – не исключение

Оно понадобится вам и для общения с заказчиками или иностранными членами команды, и для изучения профессиональной документации, и для повышения квалификации, поскольку много отличных курсов и блогов ведутся именно на английском. Рекомендуем: Изучение Английского Языка | ТОП-18 Лучших Онлайн-Курсов — Включая Бесплатные

Основные преимущества:

  • На начальном этапе карьеры эта профессия будет гораздо проще других технических специальностей, она доступна практически каждому, кто хочет работать в сфере IT. Если у вас нет цели добиться вершины карьеры (а для этого уже нужно осваивать сложные знания и технологии), вы вполне можете довольствоваться средним уровнем востребованной и достаточно стабильной отрасли.
  • Гарантии востребованности. Пока в мире существуют информационные технологии, профессия тестировщика будет востребована.
  • Гибкие условия работы. Профессия позволяет выбрать для себя удобный формат работы – в офисе или удаленно, в крупной компании или как фрилансер.
  • Тестирование может быть хорошим стартом и для развития в смежных областях – в разработке или продуктовом менеджменте, поскольку она учит детально изучать продукт с разных ракурсов, анализировать его и воспринимать глазами пользователя.
  • Хороший уровень дохода.

Основные недостатки

  • Сложная позиция в команде. По своей сути, главная задача тестировщика – докапываться к работе всей команды разработчиков, что иногда может приводить к стычкам в коллективе и не самому лучшему отношению со стороны коллег.
  • Рутинность. На начальном этапе карьеры специалист зачастую имеет дело с однотипными и повторяющимися задачами, которые очень быстро надоедают. Но это и хороший стимул быстрее развиваться в своей профессии и автоматизировать тесты.
  • Ответственность. Тестировщик – конечное звено, которое отвечает за качество продукта, поскольку проверять вашу работу уже некому. Значит, если после вашей работы остались недочеты, будьте готовы брать ответственность на себя.
  • Нередко для этой работы характерен ненормированный график.

Оплата труда

Компании, где можно работать тестировщиком программного обеспечения (по)

Зарплата тестировщика ПО высокая, но ее размер зависит от ряда ключевых факторов:

  • направление деятельности тестировщика;
  • уровень профессиональных знаний;
  • желание обучаться;
  • регион работы и компания;
  • формат сотрудничества (постоянная работа, фриланс).

Карьерный рост

Обычно после 3–5 лет успешной работы тестировщики идут дальше, ведь они усердно обучаются, чтобы стать программистами, экспертами в сфере кибербезопасности и т. д. Также они смогут работать IT-менеджерами, бизнес-аналитиками.

Профессиональные знания

  1. Знание методологий тестирования ПО.
  2. Умение работать с тестовой документацией.
  3. Знание принципа работы сетей и веб-приложений.
  4. Навыки тестирования API, умение работать c Dev Tools, Postman, Charles, Fiddler.
  5. Умение работать с базами данных, писать простые SQL-запросы.
  6. Навыки работы с TMS и Bug Tracking системами.

Тестирование – это часть более широкого понятия Quality Assurance. По мере накопления опыта тестировщик начинает участвовать в улучшении и внедрении процессов тестирования на всех этапах разработки. Такой специалист уже не просто тестировщик, а QA-Engineer.

Краудтестинговые платформы — «ясли для тестировщика»

Итак, как я уже писал выше, получить начальный опыт работы тестировщиком без опыта можно на так называемых краудтестинговых платформах.

Работа практически на всех краудтестиновых платформах строится по одному принципу. Есть какое-либо вводное обучение. Далее идет вводные тест. Если все хорошо, Вас допускают к реальным проектам. И Вы можете начать прокачивать свой рейтинг, ведь от этого будет зависеть и Ваша «зарплата».

А «доход» обычно начисляется в английских тугриках. И в принципе он достаточно неплохой.

Да. Помните. Чем «крупнее» ошибки Вы находите, тем выше Ваше вознаграждение!

Краудтестинговые платформы в основном «буржуинские». Вот некоторые из них. Часть только на английском (или немецком языках). Часть переведена (не полностью) на русский. Но велика вероятность получения задания на английском языке.

Если Вы работали на одной их них, оцените ниже, какая понравилась больше.

test.io— одна из старейших платформ краудтестинга

www.testbirds.com — есть вариант для русскоязычных пользователей.

www.passbrains.com — еще один сайт для тестирования ПО

www.globalapptesting.com — еще краудтестинговый сайт

ubertesters.com — еще одна (немецкая) платформа для тестирования

testlio.com — еще ловите сайтик для тех, кто ищет работу тестировщика ПО без опыта

www.crowdtesting.ru — и еще. Это уже на русском языке, что является редкостью в мире тестировочных платформ.

Про условия работы на этих сервисах лучше сами посмотрите у них. Заодно и с платформами ознакомитесь.

Кому подходит

Среди личных качеств, необходимых для этой профессии, сами тестировщики называют гибкий и пытливый ум, внимательность и способность сформулировать и донести до разработчиков и руководства свой взгляд на проблему. К профессиональному минимуму относятся знание английского языка и увлеченность ИТ-технологиями и компьютерными науками.

В некоторых случаях эта работа может подойти домоседам и фрилансерам на удаленке, особенно если речь идет о веб-приложениях и бета-тестировании. Но нельзя воспринимать проверку софта как независимый от проектирования вид деятельности или как состояние «над схваткой». Тестировщик ПО очень тесно взаимодействует и с программистами в рамках жизненного цикла проекта, и с директором по качеству, что делает его полноценным сотрудником компании, постоянно вовлеченным в рабочие процессы.

История профессии

Профессия тестировщик появилась недавно – около 10 лет назад, когда создание программного обеспечения перестало быть занятием избранных и превратилось в массовую индустрию.

Первоначально разработчики самостоятельно проверяли выпускаемый продукт или просили родственников и знакомых найти погрешности в тестируемой версии программы. Однако в первом случае инерция мышления человека, совмещающего функцию автора и контролера, мешала выявить все недочеты и ошибки. Кроме того, процесс поверки отнимал много времени. Во втором случае отсутствие навыков у случайных тестировщиков не давало возможности проверить софт со всех сторон.

Так на IT-рынке возникла потребность в специалистах, которые знали, как проводить тест ПО, чтобы процесс обнаружения ошибок стал системным и многоплановым. Вскоре тестировщики стали связующим и контрольным звеном между нуждами потребителя и ИТ-продуктом, транслируя бизнес-цели программистам. В настоящее время в некоторых проектах они даже имеют право блокировать версию софта, если она кажется им «сырой».

Инструменты

Selenium. Программа, позволяющая выполнять автоматическое тестирование сайтов и приложений

Postman. Популярная программа для API-тестирования

Monosnap. Инструмент для создания и анализа скриншотов

Katalon Studio. Инструмент для автоматизации тестирования с большим набором функций

Jira. Система для учета ошибок, обнаруженных в мобильных и компьютерных приложениях

Mockaroo. Генератор реалистичных тестовых данных, понадобится для отладки программ

Robot Framework. Фреймворк для автоматизации приемочного тестирования

Gatling. Фреймворк для проведения нагрузочного тестирования

Чарльз Делекторских
Fullstack-разработчик

Первый практический опыт можно получить на биржах фриланса. Преимуществом такого способа является большой выбор разнообразных проектов. Также, если человек прошел курсы и получил профессию тестировщика, то ряд школ помогает способным студентам с трудоустройством.

Тестировщики ПО, которые уже имеют какой-то опыт, могут рассчитывать на трудоустройство в IT-компании, банковские структуры и т. п. – в том числе на удаленном режиме. Проще всего искать такие вакансии через порталы по трудоустройству.

— Чарльз Делекторских Fullstack-разработчик