Инструменты для QA-инженеров
В работе QA-инженеры используют различные программы для проведения необходимых тестов. Ниже, Вы можете ознакомится с некоторыми из них
- Selenium – Бесплатный инструмент, который используется для автоматизированного тестирования web-приложений. Поддерживает все известные браузеры разных операционных систем: Windows, Linux, Mac, а также позволяет писать сценарии тестирования на основных языках программирования. Однако, selenium имеет ограниченный функционал и предназначен только для тестирования веб-приложений.
- Katalon Studio – также бесплатный инструмент, который используется для автоматизированного тестирования web и мобильных приложений. Подходит для новичков и для опытных тестировщиков. Поддерживает систему CI – технология непрерывной интеграции. Однако, Katalon Studio не выдает детальных отчетов, поддерживает небольшое кол-во языков программирования и позволяет запускать несколько тестов сразу.
- UFT – платный инструмент, который применяется для написание тестов, и также используется для автоматизации тестирования программного обеспечения за счет поддержки скриптов. Позволяет тестировать большое кол-во различных приложений. Главное преимущество UFT в том, что здесь поддерживается запись действий пользователя, что позволяет экономить время на написание новых сценариев тестирования.
- IBM Rational Functional Tester – инструмент для автоматизации процесса тестирования приложений HTML, Java, Dojo, Ajax, Microsoft Windows, Microsoft .NET, Microsoft Silverlight, Microsoft Visual Basic, Siebel, Flex, GEF и PowerBuilder, которые выполняются в ОС Microsoft Windows и Linux. Здесь, так же, можно записывать и воспроизводить действия пользователей, а также сценарии для тестирования новых компоновок приложения или ПО. Но полноценное функционирование раскрывается только в IBM среде.
- TestComplete – еще один инструмент для автоматизированных тестирований десктопных, веб и мобильных приложений. Поддерживает большое количество языков программирования такие, как VBScript, JScript, DelphiScript, C++Script, C#Script, и тестируемых приложений .NET, Java, Visual C++, Visual Basic, Delphi, C++Builder. Также позволяет записывать и воспроизводить действия пользователей и выполнять различные виды тестирования.
Какие типы или виды тестирования используются в QA процессе?
Теперь, когда мы понимаем, что представляет собой процесс QA, давайте поговорим о различных типах тестов, используемых при тестировании программного обеспечения. Да, их очень много. Но волноваться не стоит. Как только вы поймёте, по каким принципам тесты делятся на группы, вы легко сможете в них ориентироваться.
Функциональные и нефункциональные тесты
Основные категории тестов — это функциональные и нефункциональные тесты.
При функциональном тестировании мы проверяем, работает ли приложение должным образом. Другими словами, мы проверяем, соответствует ли фактический результат ожидаемому результату.
В нефункциональном тестировании мы проверяем, как наше приложение работает в различных условиях. Нагрузочные тесты, тесты безопасности, стрессовые тесты и тесты удобства пользования — все они попадают в эту категорию.
Знание исходного кода
Если тестировщики знают исходный код до тестирования, речь идет о тестировании “белого ящика” (white box testing). В противном случае мы имеем дело с тестированием “черного ящика” (black box testing), когда тестировщики оценивают только поведение приложения, не зная его внутреннего устройства. Тестирование “серого ящика” (grey box testing) представляет собой комбинацию этих двух подходов. Тестировщикам предоставляется ограниченная информация о внутренней структуре системы.
Подход к выполнению тестов
Некоторые тесты выполняются людьми, и мы говорим о ручном тестировании. При этом подходе тестировщики выполняют тестовые сценарии и создают отчеты о результатах.
Другие тесты выполняются компьютерами. Инженеры по автоматизации тестирования создают сценарии автоматического тестирования и пишут код, который многократно проверяет программное обеспечение на наличие ошибок. Здесь мы имеем дело с автоматическим тестированием.
У каждого из этих подходов есть свои плюсы и минусы. Они дополняют друг друга. Например, ручное тестирование лучше подходит для проверки небольших изменений. Во время ручного тестирования тестировщики часто могут найти такие проблемы, которые остались бы незамеченными, если бы они полагались только на автоматизированные тесты. Ручное тестирование не требует глубоких знаний языков программирования и его достаточно легко освоить.
В то же время, при работе над большими приложениями, тестирование без использования автоматических тестов может занять слишком много времени. Мы также не можем исключить вероятность человеческих ошибок.
Для каждого отдельно взятого проекта QA специалисты определяют идеальный баланс между ручным и автоматическим тестированием.
Фаза разработки программного обеспечения
Мы разделяем тесты на модульные, интеграционные, системные — в зависимости от того, на каком этапе цикла разработки программного обеспечения находится команда.
Вот еще несколько типов тестов, с которыми вы часто будете сталкиваться в публикациях:
Дымовые тесты (smoke tests) предназначены для проверки базовой функциональности приложения. Это быстро выполнимые тесты, с помощью которых тестировщики следят за тем, чтобы основные функции системы работали правильно.
Регрессионные тесты (regression tests) помогают проверить, работает ли приложение так, как оно должно работать, после внесения каких-либо изменений, например исправления дефектов.
Нагрузочные тесты (load tests) необходимы для проверки приложения как при средней, так и при пиковой нагрузке.
Кроссбраузерное / кроссплатформенное тестирование помогает анализировать поведение приложения в различных браузерах и системах.
Конечно, это не все типы тестов, которые используются в процессе разработки программного обеспечения. Но знание этих основных категорий поможет вам лучше ориентироваться в теме QA.
ALM Octane
ALM Octane — это давно обкатанный в боях и достаточно мощный инструмент, который позволяет оптимизировать и наблюдать за своими рабочими процессами, объединить мануальное и автотестирование, управлять и настраивать релизные циклы. Продукт сложный в освоении, однако его функциональность закрывает потребности больших компаний со сложной внутренней структурой разработки. Система масштабируема в рамках компании что позволяет добавлять в базу знаний всё новых и новых пользователей в том числе делиться с ними уже наработанными данными. Также есть возможность вести требования напрямую в продукте.
ALM Octane
Всю систему можно кастомизировать под свои потребности\нужды, гибкий функционал по разработке и ведении тестов позволяет существенно сократить время и силы затрачиваемые на повышение качества выпускаемых продуктов компании.
ALM Octane
Возможности:
-
Давно проверенный на рынке инструмент с большой базой уроков\материалов по изучению и способам работы с продуктом
-
Общий доступ к библиотекам требований и ресурсов
-
Подробные сведения о коде, тестировании, управлении рисками и их оценке, а также о соответствии требованиям
-
Быстрый доступ к показателям, например к данным о не устранённых дефектах
-
Масштабируемая среда разработки и ведения тестовой документации
-
Работа с мануальными и автоматизированными тестами в едином интерфейсе
-
Настраиваемый интерфейс и шаринг базы знаний в рамках компании
-
Создание требований и отслеживание их выполнения на всех этапах жизненного цикла приложения
-
Расширенные данные по аналитике процессов тестирования и трудозатрат
-
Интеграция с 50+ инструментами
Цены: от $28 в месяц
AWS marketplace
Бесплатная пробная версия: 30 дней
Требования к тестировщику ПО
Для успешной работы тестировщиком желательно, но не обязательно, иметь высшее техническое образование
Большинство крупных и успешных на рынке компаний-разработчиков ПО набирают штат тестировщиков основываясь на успешном прохождении собеседования и решения тестовых задач, которые полагаются больше на логику и внимание, чем непосредственно на технические знания. А необходимая техническая основа преподаётся наставником уже в непосредственном процессе работы
Таким образом компании получают перспективного сотрудника, который по тем или иным причинам не получал высшее техническое образование и не тратят сил и средств на его переобучение, предпочитая обучать сразу под себя. Конечно же, пройденные онлайн курсы и прочитанная перед собеседованием тематическая литература будут большими плюсами.
В любом случае при заявке на позицию тестировщика программного обеспечения человек должен хорошо обращаться с компьютером.
Знание технического английского языка, представление о языке SQL, знание баз данных типа MySQL и знание программ для автоматизированного тестирования (при необходимости использования) будут Вашими преимуществами на собеседовании.
Обязанности специалиста
В целом, вы уже имеете представление о профессии. А теперь немного подробнее расскажу об обязанностях специалиста, чтобы представить как складывается последовательно его рабочий день. Итак, что делает тестировщик:
- знакомится с новой программой, изучает ее структуру, технические характеристики и назначение;
- составляет план тестирования и пишет возможные сценарии тестов (ручных или автоматизированных);
- осуществляет непосредственно тестирование в соответствии с составленными сценариями, вносит возможные поправки по ним;
- пишет подробные отчеты для разработчиков по итогам проверки (возникшие проблемы описываются максимально подробно);
- проводит повторное тестирование после устранения ошибок, по результатам которого дает добро на запуск программы (иногда на повторную доработку).
Во всем этом процессе непосредственно сама проверка занимает более 50% рабочего времени тестировщика.
Где искать работу?
Специалисты данной профессии востребованы во многих сферах, например, разработки программного обеспечения, игр, приложений. Вакансии тестировщиков можно найти как в компаниях, создающих собственный ИТ-продукт, так и фирмах, ведущих разработку софта для сторонних заказчиков.
- Если вас интересует проектная работа, то найти ее можно на биржах фриланса.
- Вакансии в офис можно искать на сайтах по трудоустройству для ИТ-специалистов.
-
Рекомендую посмотреть обзор компаний, нанимающих удаленных сотрудников.
Рекомендуем
Профессия журналист
Журналист – это интересная профессия для общительных и любознательных людей. Предполагает постоянные контакты с людьми и участие в мероприятиях. …
Профессия модератор группы
Модератор группы – профессия, которую можно быстро освоить самостоятельно. Она подойдет тем, кто хочет подработать в интернете, но не обладает …
Краудтестинговые платформы – “ясли для тестировщика”
Итак, как я уже писал выше, получить начальный опыт работы тестировщиком без опыта можно на так называемых краудтестинговых платформах.
Работа практически на всех краудтестиновых платформах строится по одному принципу. Есть какое-либо вводное обучение. Далее идет вводные тест. Если все хорошо, Вас допускают к реальным проектам. И Вы можете начать прокачивать свой рейтинг, ведь от этого будет зависеть и Ваша “зарплата”.
А “доход” обычно начисляется в английских тугриках. И в принципе он достаточно неплохой.
Да. Помните. Чем “крупнее” ошибки Вы находите, тем выше Ваше вознаграждение!
Краудтестинговые платформы в основном “буржуинские”. Вот некоторые из них. Часть только на английском (или немецком языках). Часть переведена (не полностью) на русский. Но велика вероятность получения задания на английском языке.
Если Вы работали на одной их них, оцените ниже, какая понравилась больше.
test.io– одна из старейших платформ краудтестинга
www.testbirds.com – есть вариант для русскоязычных пользователей.
www.passbrains.com – еще один сайт для тестирования ПО
www.globalapptesting.com – еще краудтестинговый сайт
ubertesters.com – еще одна (немецкая) платформа для тестирования
testlio.com – еще ловите сайтик для тех, кто ищет работу тестировщика ПО без опыта
www.crowdtesting.ru – и еще. Это уже на русском языке, что является редкостью в мире тестировочных платформ.
Про условия работы на этих сервисах лучше сами посмотрите у них. Заодно и с платформами ознакомитесь.
На микроволновках
Допустим, в компании решили создать бытовую микроволновку.
Продакт-менеджер:
Коллеги, нам нужно устройство, в котором люди смогут разогревать блюда, но без нагревательного элемента. Чтобы работала быстро. Размер такой-то. Нужна дверца. Обязательно таймер.
Разработчик:
Для этого подходят микроволны. Потребуется сделать вращающуюся платформу и фарадееву клетку.
Продакт:
Ничего не понял, делайте.
Инженер по тестированию:
Постойте!
Все:
Что?
Инженер по тестированию:
От какого напряжения будет работать? Какая будет защита от перепадов? А если включить в розетку вдвое менее мощную? Что там можно будет греть, а что нельзя? Что если включить с открытой дверцей? Что будет, если греть воду? Что если греть камень? А сталь? А кота? А динамит? А если поджечь фитиль? А если туда ничего не положить и включить?
Все крепко думают.
Это и есть работа тестировщика: убедиться, что продукт работает нормально в штатных и внештатных ситуациях. По-умному будет так: «Насколько реальное поведение продукта совпадает с ожидаемым и как это отразится на опыте пользователя?»
Почему тестировщик и QA не одно и то же
На практике основные задачи тестировщика отличаются от обязанностей QA-инженера. Тестировщик запускает тесты, проверяет и сверяет фактический результат с ожидаемым. У QA-инженера — масса задач для поддержания качества продукта. Общение с командой или заказчиком, планирование работ по тестированию, генерация специфической проектной документации и множество других тасков. Но если относиться к такой работе, как к длительному процессу развития, то большая часть умений приходит к тестировщику с опытом. Он участвует в командных активностях, постепенно получает доступ ко все большему количеству интересных заданий и усиливает свою экспертизу. Потихоньку начинающий тестировщик приближается к гордому званию настоящего QA.
Опыт получен. В запасе появились новые скилы. Что дальше? Всегда можно придумать другой подход к тестированию того, что уже сотню раз проверяли, и найти то, что можно оптимизировать.
QA — в первую очередь инженер
Для многих это звучит непривычно и вызывает небольшое сопротивление. Не стоит нервничать 🙂 Специалист каждый новый таск воспринимает, как челлендж, рвется его преодолеть с помощью имеющегося тулсета? Поздравляем, Вы нашли идеального QA. Столкнувшись с незнакомой задачей, тестировщик скажет: «Я такого не умею. Найдите того, кто умеет», а инженер ответит: «Дайте я разберусь и объясню, как могу решить эту задачу». В моей команде есть несколько специалистов, которые постепенно начали разделять и поддерживать этот подход. В тот момент, когда они приняли новые правила игры, когда страха неудачи не существует, а очередная задача — это всегда увлекательный и посильный челлендж — они стали получать от работы больше удовольствия и постоянный респект от коллег. Ребятам достаются новые, «непонятные» таски и в них они находят для себя постоянный рост.
Какие активности доступны с описанным выше складом ума? Любые! Ограничений практически нет. За любую задачу можно взяться, почерпнув из нее что-то новое. Например, виды тестирования, помимо простого мануального, это же кладезь интересных задач:
-
автоматизация функциональных проверок;
-
перформанс;
-
секьюрити;
-
аксессибилити.
Среди других активностей, могу выделить такие:
-
вникание в код приложения для поиска новых вариантов проверок или отсечения дубликатных;
-
применение новых техник тест-дизайна к существующим проверкам;
-
построение новых пайплайнов тестирования.
Этот список можно продолжать. Каждый специалист найдет что-нибудь полезное для профессионального роста, руководствуясь своими навыками и интересами. Чтобы получать доступ ко все новым активностям и таскам. Крутой инженер умеет все, а с чем еще не знаком, разберется и сделает самостоятельно.
Обучение на тестировщика ПО
Начинающий тестировщик может окончить ссуз (колледж, техникум) или получить необходимые навыки на курсах – все зависит от требований потенциального работодателя и карьерных притязаний. Тем не менее высшее техническое образование стоит рассматривать как приоритетное. В вузах можно выбрать несколько направлений подготовки:
- «Прикладная математика и информатика» (код: 01.03.02);
- «Информатика и вычислительная техника» (код: 09.03.01);
- «Информационно-аналитические системы безопасности» (код: 10.05.04);
- «Информационная безопасность» (код: 10.03.01) и другие технические направления, связанные с информатикой, математикой, защитой цифровой информации и вычислительной техникой.
Профильные ЕГЭ на всех специальностях, связанных с программированием, – математика и информатика.
Если решили начать свой карьерный путь с ссуза, то рассмотрите направления:
- «Информационные системы и программирование» (код: 09.02.07);
- «Компьютерные сети» (код: 09.02.02);
- «Прикладная информатика (по отраслям)».
Начать обучение в вузе можно после 11 класса, в ссуз абитуриент может поступить, окончив 9 классов.
Курсы
УЦ «Специалист» при МГТУ им. Н. Э. Баумана
На сайте учебного центра доступен большой выбор качественных программ для людей, которые решили стать тестировщиками ПО. Любой курс состоит из теоретических и практических блоков, форма обучения может быть очной или дистанционной. Длительность обучения составляет 16-64 ак. ч., минимальная стоимость – 11850 руб. и выше, что напрямую зависит от выбранного профиля.
Будущее тестировщика
- Разработка программного обеспечения — логичный и не самый сложный путь для тех, кто увлечётся языками программирования и захочет не только ковырять чужой код и готовый проект, но и создавать что-то внутри команды.
- Руководитель проекта. Отличное знание проекта в целом, понимание потребностей и требований клиентов — прямой путь к этой точке.
- Скрам мастер — интересный разворот, который у тестировщиков хорошо удаётся благодаря опять же знаниям проекта в целом и умениям жёстко планировать сроки работ.
- Бизнес-аналитик, внедренец — денежные, но не столь технические должности для ребят с прокачанными коммуникативными навыками.
Обязанности и задачи специалиста
В чем же заключается работа тестировщика? Если говорить об этапах работы, то типичная деятельность специалиста может быть отображена в следующей логической цепочке:
- Получение задания о проверке программного продукта.
- Изучение полученного IT-продукта.
- Определение приоритетов тестирования, создание тестовой модели.
- Подбор необходимого комплекса тестов.
- Сопоставление реальной работы ПО с ожидаемыми результатами и выявление несоответствий.
- Поиск багов и ошибок.
- Устранение недостатков, улучшение функционирования IT-товара.
- Проведение нового тестирования.
- Написание отчета о проведенных процедурах.
При необходимости после второго тестирования снова идет поиск и устранение ошибок, а затем проведение еще одного теста. И процесс повторяется, пока продукт не пройдет порог качества, что делает работу QA-инженера цикличной. Во время тестирования специалисту надо совершить все возможные операции, которые могут сделать пользователи, чтобы найти все ошибки.
Сложность состоит в том, что в лабораторных условиях баги не проявят себя, а клиент додумается нажать на вот эту кнопку или перейти по вон той ссылке и обнаружит сбой. Поэтому тестировщикам нужно предугадывать стандартное и нестандартное поведение пользователей, что является творческим процессом. При этом нужно уметь применять смекалку и анализировать данные.
При ручном тестировании нужно самому сыграть пользователя и сымитировать все его действия по отношению к игре, приложению или сайту. Поэтому такой вид тестирования могут называть поведенческим.
При автоматическом же тестировании специалист работает со специальными программами. Он их подбирает и настраивает, пишет для них код, готовит данные для тестов, а после запускает само тестирование. Затем работник анализирует зафиксированные результаты и пишет отчет, который потом передает разработчикам.
Создание пошаговых инструкций к тестированию, т. е. тест-кейсов, в которых учитываются все требования аналитиков, тоже лежит на плечах QA-инженеров.
Test IT
Test IT — российская система управления тестированием, которую создают тестировщики для тестировщиков. Данный продукт быстро набирает обороты и постоянно расширяет свои функциональные возможности. Умеет в мануальное\автотестирование в рамках единого интерфейса, поддерживает гибкую ролевую политику, кастомизацию.
Присутствуют расширенный возможности по ведению, оформлению и прохождению тестовых артефактов, в том числе в связке с параметрами тестов и используемых конфигураций. Благодаря простым и кастомизируемым отчётам возможно собрать всю необходимую информацию как о мануальных, так и об автотестах. Система подходит как для небольших команд от 3-х тестировщиков, так и для крупных команд.
Test IT
Систему отличает приятный дизайн, оперативная техподдержка, частые релизы и обратная связь от разработчиков данного решения.
Возможности:
-
Удобное управление, оптимизация и выполнение тестовых артефактов
-
Работа с мануальными и автотестами из единого интерфейса
-
Расширенный анализ автоматизированных тестов и тест-ранов
-
Кастомизация интерфейса и пользовательских локальных\глобальных атрибутов
-
Работа с параметрами\конфигурациями в рамках системы
-
Полноценное версионирование тестовых артефактов
-
Кастомизируемые дашборды, которые позволяют вывести всю необходимую информацию по процессам тестирования
-
Внутренний чат и вебхуки во внешние системы
-
Гибкая ролевая политика как доступа к системе, так и к проектным областям
-
Двусторонняя интеграция с JIRA\Azure DevOps
-
Расширенный функционал публичного API
-
Игровой элемент
Test IT
Цены: от 3-х лицензий 2121 рублей в месяц
Бесплатная пробная версия: на 30 дней для 25 юзеров
Может ли новичок-нетехнарь стать хорошим QA-специалистом
Порог входа в тестирование довольно низкий. Чтобы стать тестировщиком, не требуется техническое образование. Главное, чтобы человеку была интересна сфера IT и он хотел развиваться в этом направлении. Об этом говорит в своём интервью на hh.ru руководитель департамента обеспечения качества ПО Veeam Software Игорь Кацев.
На сайте Software-Testing.ru опрашивали тестировщиков из России и СНГ по поводу их образования. Оказалось, что в профессию приходят и достигают в ней карьерных высот разные люди: технари, гуманитарии, экономисты, юристы, люди с двумя высшими и люди без диплома вообще.
Как построить карьеру
Карьеру тестировщика ПО можно начинать непосредственно в той компании, в которой соискатель планирует работать и дальше. Иногда для старта не нужен опыт работы – достаточно продемонстрировать базовые знания и навыки. Многие предприятия предпочитают самостоятельно готовить кадры под конкретные нужды, а не переучивать уже сформировавшихся специалистов. Компания в этом случае сама оплачивает обучение стажеров или организовывает курсы на базе отдела.
После прохождения стажировки работник может дорасти до специалиста, ведущего специалиста, руководителя отдела (группы) тестирования и управляющего отдела контроля качества.
Автотестирование интерфейсов
Прокликивать вручную каждый раз десяток кнопок в браузере, чтобы проверить, как работает страница или скрипт, — долго и утомительно. Лучше поручить это машине — она справится быстрее.
Есть много программ для тестирования интерфейсов, которые отличаются только способом их программирования. Дело в том, что эта программа сама не знает, куда нужно нажать и что должно получиться. Весь этот алгоритм должен задать тестировщик, а для этого хорошо бы знать язык, который для этого используется.
Puppeteer — пример такой программы для автотестирования интерфейсов. Она написана на Node.js, а значит, для программирования её работы достаточно знать JavaScript. Логика такая: пишете код → отправляете её в программу → она сама открывает страницу и нажимает на кнопки → выдаёт результат и найденные баги.
Пример кода для Puppeteer:
Результат запуска теста с Puppeteer и Jest: 8 тестов интерфейса за 4 секунды
Востребованность профессии и доходы тестировщиков ПО
По данным зарплатного калькулятора Хабр Карьеры, средний размер заработной платы тестировщика составляет чуть больше 96 тысяч рублей в месяц. Конечно, это среднее значение. Есть те, кто зарабатывает значительно меньше, скажем, тысяч 30, а есть и те, кто получает в 10 раз больше — около 300 тысяч рублей.
Средняя з/п тестировщика ПО в первом полугодии 2020 года
Профессионалы примерно одного уровня, выполняющие один и тот же пул задач в столице и в регионе могут получать сильно отличающуюся зарплату. В Москве это 100+ тысяч рублей, в регионах — 40-50 тысяч рублей, а в некоторых случаях и вовсе 20-30 тысяч.
Если сравнивать уровень зарплаты тестировщиков в РФ и за рубежом, то разница в среднем 30-50%.
Источник картинки https://habr.com/ru/post/446650/
Плюс можно сравнить еще разброс уровня заработной платы в зависимости от региона — Евросоюз, СНГ, США и Канада, РФ.
Источник картинки https://habr.com/ru/post/446650
Наш зарплатный калькулятор показывает и список навыков, которыми владеют тестировщики ПО:
-
Тестирование ПО;
-
Ручное тестирование;
-
Функциональное тестирование;
-
Автоматизация тестирования;
-
Python;
-
Selenium webdriver;
-
Разработка тест-кейсов;
-
Тестирование мобильных приложений;
-
Контроль качества;
-
Black box testing.
А вот свежие вакансии для специалистов по тестированию на Хабр Карьере. Их ищут, например, Сбербанк и Сбермаркет, Admitad, JetBrains, CSSSR и EPAM. Уровень зарплаты зависит от квалификации, стека и, конечно, компании.
Вакансии тестировщиков на Хабр Карьере
Плюсы и минусы работы тестировщиком
▍Плюсы
- До определённого момента работа тестировщика проще остальных технических специальностей и доступна многим, кому интересна ИТ-сфера. Переходить ли рубеж к тому интервалу, где работа становится максимально сложной, решение каждого. Если дальше не пойдёте, вас из тестирования не выгонят, вы всё равно будете востребованы.
- Потребность в тестировщиках не исчезнет до тех пор, пока есть информационные технологии, связь, интернет, роботы, автопилоты и т.д.
- Тестирование — не столь изученная область, как программирование. Если у вас есть талант и трудолюбие, вы сможете сказать своё слово миру (написать книгу, создать методологию, преподавать и т.д.).
- Карьера тестировщика довольно свободная: можно сидеть в офисе с гибким графиком, можно работать удалённо, а можно стать фрилансером, набрать проектов и тестировать их по сдельной оплате.
- Тестировщику легче вернуться на работу после долгого перерыва, например, из опыта создания своего стартапа, фриланса, декрета, иных обстоятельств.
- Работу в тестировании можно сочетать с учебой без вреда для обоих видов деятельности.
- Вы научитесь «видеть продукт» со всех сторон, узнаете все функциональные возможности, посмотрите на софт глазами инженера и глазами потребителя. Это прямой путь в менеджеры продукта. Общая картина продукта поможет вам в любом случае — например, если вы решитесь уйти в разработку.
▍Минусы
- Команда недолюбливает тестировщиков 🙂 Нет, ну вы вот сами прикиньте: вы делаете продукт, пишете код, документацию, а потом на него нападает кучка коллег и заводит баг за багом на каждую мелочь. Ну как это вынести в адекватном состоянии?! Хуже только быть единственным тестировщиком в команде — тогда всё, ты конченая сволочь. Шутки шутками, но нередко команда считает, что именно тестировщики задерживают выпуск релизов и клиентских сборок. В общем, не любят люди, когда находят ошибки в их работе.
- На первом этапе вы работаете с повторяющимися задачами, иногда работать становится невыносимо скучно.
- Тестировщики ищут ошибки разработчиков, искать ошибки тестировщиков некому. Поэтому вы будете крайними в некоторых неприятных ситуациях.
- Работа тестировщиков часто бывает незаметна руководству — придётся привыкнуть быть серым кардиналом, невидимым героем.
- Сверхурочная работа — бич тестировщиков. Рано или поздно вам будет нужно срочно оттестировать релиз или сборку, которую нужно выкатить завтра или «вот прям щас» или же остаться и проверить внесённые программистами исправления. И вы останетесь, а вот оплачивается такой героизм далеко не всегда (я вообще не встречал).
- На тестировщиках лежит огромный груз ответственности за полноту и охват тест-планов — если что-то упустить, отвечать уже придётся за пропущенные баги.
Кто такой тестировщик и что он делает?
Тестирование ПО – это интересный процесс, в котором есть свои правила, методики и техники. Давайте разберемся, в чем заключается данная работа.
Нужно искать ошибки, особенно критичные, чтобы устранить их до выпуска программы на рынок. Например, не действует кнопка, приложение зависает, игра ломается и т.д
Важно смоделировать все возможные ситуации, которые могут возникнуть. Протестировать сайт или иной IT-продукт во всех популярных браузерах
Результатом работы являются баг репорты. Это отчеты, в которых описано, когда и какие ошибки возникают, при каких действиях и т.д.
https://youtube.com/watch?v=hSJbiDIDycE
Как правило, процесс тестирования проходит следующим образом:
Вначале тестировщик ПО составляет план по проверке программного обеспечения и пишет сценарии тестов, которые нужно выполнить.
Затем осуществляет функциональное тестирование продукта и пишет баг-репорты. Они фиксируются в специальных программах – баг-трекерах. Например, в каком-то браузере не работает какой-то функционал
Важно подробно описать проблему для разработчиков, чтобы они ее устранили.
После доработки ПО проводится серия ретестов, которые направлены на проверку доработок (остались ошибки или нет, появились новые баги или нет).
Помимо ручного тестирования, специалист может настраивать автоматические тесты и контролировать их выполнение. Их настройка требует определенной квалификации и повышает зарплату тестировщика программного обеспечения.
Кто всё это делает: немного о профессии
Тестированием программы занимаются специалисты по контролю качества программного обеспечения — QA-инженеры. У них есть разные специализации: тестировщики баз данных, специалисты автоматизированного тестирования, аналитики, разработчики тестов, специалисты по безопасности приложений и другие.
Если проект большой, над ним работает целая команда: одни тестировщики готовят тесты, другие проверяют их полноту и логику, третьи занимаются непосредственно тестированием. Над небольшими задачами может работать один специалист, причём удалённо.
Тестировщики — среди самых востребованных сейчас специалистов-айтишников. Появляется множество новых программ, и каждой из них нужен контроль качества. QA-специалистов нанимают крупные компании-разработчики ПО, они могут стать фрилансерами и работать сразу на несколько фирм.
Как показывает статистика работных сайтов, на рынке не хватает разработчиков автотестов, а специалистов ручного тестирования достаточно. Средняя зарплата тестировщика в Москве больше 120 тысяч рублей, а по регионам — примерно 55–60.
На скриншотах ниже — данные с HeadHunter. В сентябре 2020 года там было 3000 открытых вакансий тестировщика.
В описаниях вакансий работодатели предлагают зарплаты от 45 до 250–300 тысяч рублей.
В среднем по России на одну вакансию приходится шесть резюме от ищущих работу. Чаще всего нужны опытные тестировщики, но есть места и для начинающих.