IT 12.08.2020

О чём важно знать, чтобы стать тестировщиком: советы новичкам

14 мин.

Кто такой тестировщик и каковы его основные обязанности?

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

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

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

Краткое описание

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

  • Альфа-тестировщики, которые работают с ПО, находящимся в стадии разработки;
  • Бета-тестировщики, которые специализируются на готовых версиях ПО.

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

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

Когда в России говорят «тестировщик», подразумевают одну из двух специализаций: Quality Assurance (QA) или Quality Control (QC).

  • QC-специалист отвечает за то, чтобы результат работы программистов соответствовал цели: контролирует анализ кода и находит ошибки в работе ПО.
  • QA-специалист не только контролирует, но и обеспечивает качество работы продукта. Он отвечает и за работу ПО, и за сами процессы его разработки: выбирает инструменты, помогает предотвращать ошибки и совершенствовать продукт.

По словам руководителя отдела тестирования и обеспечения качества в Redmadrobot Марины Куликовой, в российских компаниях мало кто чётко разграничивает между собой QA и QC, поэтому представителей обеих специализацией называют «тестировщиками».

«В первую очередь это связано с тем, что серьёзно воспринимать тестирование в нашей стране начали совсем недавно», — рассуждает Куликова.

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

В Mail.ru Group используется и ручное, и автоматизированное тестирование. В первом случае специалист проходит пользовательский путь, пытаясь «сломать» сервис, во втором — пишет код, который проверяет элементы системы.

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

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

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

Все вышеперечисленные обязанности стоит разделить на 3 основных этапа: разработка (косвенное участие), тестирование и анализ, подготовка технической отчетности и отладка. Этот вид деятельности требует вовлеченности, профессия подходит для юношей и девушек, которые склонны к кропотливой и малоподвижной работе.

Как обучиться с нуля?

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

Для начала будет достаточно пройти нескольких курсов по тестированию (бесплатно или платно). Таким образом, вы сумеете погрузиться в азы этой профессии и уже начать потихоньку пробовать себя в практической деятельности. Из базовых книг порекомендуем:

«Быстрое тестирование», написанную Робертом Калбертсоном, Крисом Брауном и Гэри Коббом;

«Тестирование программного обеспечения», написанную Сэмом Канером, Джеком Фолком и Енгом Кек Нгуеном.

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

тестирование приложений, разрабатываемых под смартфоны и планшеты;

процесс автоматизации тестирования;

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

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

Сколько зарабатывает тестировщик?

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

Давайте рассмотрим уровень средних и максимальных зарплат этого специалиста.

До 1 года работы: средняя зарплата — 550$, максимальная — 1200$;

1 год опыта работы: средняя заработная плата — 1030$, максимальная — 1800$;

до 2 лет опыта работы: средняя зарплата — 1370$, максимальная — 2100$;

до 3 лет опыта работы: средняя зарплата — 1630$, максимальная — 2400$;

до 4 лет опыта работы: средняя заработная плата — 2000$, максимальная — 3000$;

до 5 лет опыта работы: средняя зарплата — 2500$, максимальная — 3400$.

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

Количество вакансий и зарплата

По данным сервиса для поиск работы HeadHunter, количество вакансий в России на позицию тестировщика, QA Engineer выросло на 18% по сравнению с 2018 годом. В Санкт-Петербурге этот показатель превысил 35%, а в Москве приблизился к 45%.

При этом на одну вакансию в среднем по России приходится шесть резюме от соискателей.

По данным HeadHunter, средняя зарплата на позиции тестировщика в 2019 году превысила 59 тысяч рублей. В Санкт-Петербурге в среднем тестировщику предлагают около 67 тысяч рублей, а в Москве — более 79 тысяч рублей.

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

По словам специалиста по контролю качества в сервисе Bookmate Анастасии Шариковой, сегодня больше всего востребованы специалисты по автоматическому тестированию.

Её слова подтверждают в пресс-службе «Сбербанка»: «На рынке достаточно специалистов ручного тестирования, при этом наблюдается дефицит кандидатов с опытом разработки автотестов на Java».

Чему и где учиться

Мы опросили руководителей отделов контроля качества и представителей российских ИТ-компаний: «Тинькофф», 2GIS, Mail.ru Group и «Сбербанк».

По словам экспертов, в российских вузах пока нет специальности «тестировщик», и её придётся осваивать самому — по книгам и курсам.

Задачи тестировщика

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

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

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

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

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

Как работает тестировщик

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

alt

Первый этап. Сбор информации

Сначала нужно изучить задачу: какие требования и условия были у нового продукта, как это работает на практике и всех ли в команде устраивает результат. Всё это можно узнать у разработчиков и менеджера продукта.

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

Второй этап. Анализ

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

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

«Если вы тестируете показ всплывающего окна, то такими маленькими блоками могут стать отрисовка всплывающего окна и условия показа. Отдельно проверяем, как окно будет отображаться для пользователя, и оцениваем логику показа без тестирования пользовательского интерфейса. При таком тщательном подходе в тестовой модели будет меньше ошибок, а проверка пройдет быстрее», — говорит Фёдор Зволинский.

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

Третий этап. Разработка тестовых сценариев

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

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

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

«Простой пример: есть функция, которая считает суммарную стоимость купленных билетов в кино. При этом стоимость одного билета известна, а купить можно не более восьми билетов за раз. В таком случае мы можем воспользоваться двумя техниками, которые были придуманы до нас: классами эквивалентности и граничными значениями. Сначала нам нужно проверить, что функция действительно всё правильно считает. Возьмём значение из середины, допустим, 5. Если с результатом всё будет в порядке, следует проверить границы — 1 и 8, а также точки снаружи границ — 0 и 9. Таким образом мы создали всего пять тестов. А если бы мы перебирали все значения от 0 до 9, нам потребовалось бы десять проверок. Экономия времени и усилий в два раза», — объясняет Фёдор Зволинский.

Цель этого этапа — решить, как проводить тесты, выбрать инструменты и методику.

Четвертый этап. Тестирование

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

Проверить продукт на совместимость с браузерами и операционными системами помогают эмуляторы. Это программы, которые воспроизводят возможности разных устройств — ПК, планшета или смартфона — с разными операционными системами. Эмуляторы удобны, когда продукт нужно протестировать одновременно на Android и iOS: не нужно ничего загружать на устройство, все действия выполняются на виртуальном аналоге.

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

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

Пятый этап. Подготовка отчета

Ошибки нужно описать и показать. Кроме текста тестировщик готовит скриншоты или видео, где можно увидеть ошибку. Всё, что удалось обнаружить, нужно зафиксировать в специальных программах. Для этого используют Bugzilla, Redmine, Mantis, HP ALM. Если процессы в компании еще не настроены, работают с Word и Excel.

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

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

Шестой этап. Проверка исправленного продукта

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

Что нужно для старта

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

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

alt

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

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

Преимущества

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

Недостатки

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

Профессиональные навыки тестировщика ПО

  1. Знание теории тестирования, умение готовить сценарии проверки ПО и грамотную отчетную документацию.
  2. Навыки работы с системами баг трекинга (Redmine, Bugzilla или Jira). Весьма кстати придется владение востребованными языками программирования, на которых написано тестируемое ПО, а также навыки работы с базами данных.
  3. Необходимость настройки автоматизированного тестирования и контроля результатов выполнения.
  4. Умение работать в коллективе и развитые коммуникативные навыки, потому что работа тестировщика невозможна без тесного взаимодействия с разработчиками.
  5. Усидчивость, стрессоустойчивость, внимательность и педантичность.

Зарплата тестировщика ПО

Средний размер оплаты труда специалистов по тестированию находится в диапазоне от 50 до 60 тысяч рублей в месяц. Если смотреть по столице, здесь ЗП достигает уже 180 тыс. рублей, а в областных центрах – до 60-80 тыс. рублей.

зарплата начинающего тестировщика

Если говорить о тестировщике-фрилансере, ему наиболее выгодно работать с клиентами из-за рубежа. Западные биржи разработчиков предлагают почасовую оплату от 15 до 20 долларов США. У более продвинутых тестировщиков есть шанс зарабатывать здесь до 30 долларов в час.

зарплата продвинутого тестировщика

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

зарплата тестировщика по

Как войти в профессию

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

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

Источники

  • https://webformyself.com/kak-stat-testirovshhikom-s-nulya/
  • https://www.profguide.io/professions/software_tester.html
  • https://vc.ru/hr/74218-professiya-testirovshchik-po-gde-nauchitsya-skolko-mozhno-zarabotat-i-kak-ustroitsya-na-rabotu
  • https://academy.yandex.ru/posts/chem-zanimaetsya-inzhener-po-testirovaniyu-i-kak-nachat-rabotat-v-etoy-oblasti
  • https://SergeySmirnovBlog.ru/sposoby-zarabotka/testirovschik-po.html
[свернуть]
Оцените статью
Понравилась статья?
Комментарии (0)
Комментариев нет, будьте первым кто его оставит

Комментарии закрыты.