Тестировщик – это квалифицированный специалист, занимающийся тестированием мобильных приложений, десктопных программ, веб-приложений и другого софта до его официального выхода. В ходе работы тестировщик проверяет наличие ошибок, находит уязвимости, смотрит, адаптировано ли приложение под разные устройства, и выполняет много других операций.
Тестирование приложений – это не просто «потыкать» кнопки и понять, хорошо ли все работает. Это та деятельность, в которой задействуются навыки из сферы IT, дизайна и даже продуктового менеджмента.
Почему быть тестировщиком не так просто, чем занимается этот специалист и как им стать – поговорим в сегодняшней статье.
В конце материала вас ждет небольшой тест, который покажет, сможете ли вы стать хорошим тестировщиком.
Что делает тестировщик
Тестировщик ПО старается найти все возможные ошибки, которые могут возникнуть у пользователя при взаимодействии с продуктом. Например, при работе с поисковой строкой проверяются все сценарии: вводится лимитное число символов на разных языках, проверяется ввод «нетипичных» знаков и так далее.
На первый взгляд кажется, что тестировщик работает с продуктом как обычный пользователь, но это не совсем так. Перед началом работы тестировщик составляет план действий, а также определяется с методами, которые будет использовать для тестирования предстоящего продукта.
Вместе с этим тестировщик взаимодействует с аналитиком, который составляет сценарий, что должно произойти после тестирования определенного этапа. Например, какие данные должны быть на входе, как они обрабатываются и так далее. Тестировщик на основе этого «идет» по продукту и составляет отчет. Выглядеть он может так:
Иногда даже детальная проверка не помогает найти все ошибки, поэтому тестировщикам приходится думать над различными ситуациями, способными «поломать программу». В таком процессе задействуются творческие и аналитические способности, которыми хорошо должен обладать тестировщик.
Кто такое мануальщики и автотестеры
Тестировщиков принято разделять на мануальщиков и автотестеров. Первые находят все ошибки вручную, вторые разрабатывают специальные программы, которые выполняют все действия автоматически.
На практике такого разделения, как правило, нет. Профессиональный тестировщик выполняет работу и за мануальщика, и за автотестера. Если речь идет только о мануальщике, то обычно такие специалисты стараются освоить языки программирования, чтобы не выполнять множество одинаковых действий. Автотестеры напротив стараются избегать ручного тестирования, но в любой момент могут пойти и «потыкать» программу без дополнительного ПО.
Также иногда выделяют дополнительные роли, например security-тестировщика, который занимается проверкой систем безопасности. BI (business intelligence) – тестировщик, работающий с большими объемами данных. В некоторых компаниях есть целые отделы performance-тестирования – контроля производительности ПО и нагрузок на приложения. Usability-тестировщики проверяют, насколько продукт удобен в использовании и привлекателен для пользователя.
В большинстве крупных проектов не обойтись без автоматизации, поэтому, если вы планируете стать тестировщиком, потребуется изучить программирование – сейчас без этого никуда.
Чем тестировщик отличается от QA-специалиста
QA (от англ. Quality Assuranse) представляет собой совокупность мероприятий, охватывающих все этапы разработки, выпуска и эксплуатации программного обеспечения. Это активности на всех этапах жизненного цикла ПО, которые предпринимаются для обеспечения требуемого уровня качества выпускаемого продукта.
В чем же состоят различия между QA и тестировщиком подробнее рассмотрим в сравнительной таблице:
QA-инженер |
Тестировщик |
---|---|
Фокусируется по большей части на процессах и средствах, чем на самом тестировании продукта |
Фокусируется на тестировании продукта |
Процессно-ориентированный подход |
Продуктно-ориентированный подход |
Подмножество процессов Software Test Life Cycle – цикла тестирования ПО |
Подмножество процессов QC |
Обратите внимание, что из всего этого у нас вытекает еще одно определение. QC (от англ. Quality Assurance) – процесс проверки качества, который обеспечивает соответствие продукта ранее установленным требованиям. Другими словами, это процесс, который обеспечивает ожидаемое качество продукта.
QC фокусируется на тестировании путем выполнения программ с целью определения дефектов с использованием утвержденных процессов и средств. Вместе с этим он является подмножеством QA.
Тестирование – это часть QC, а QC – часть QA.
QA обеспечивает правильность процесса, а QC предполагает контроль соблюдения требований. Тестировщик же, напротив, обеспечивает сбор данных, которые вносятся в документы, созданные в ходе работы QC.
Выводы:
- тестирование позволяет определить работоспособность продукта: правильно ли он был разработан, были ли использованы необходимые инструменты и так далее;
- QA обеспечивает соответствие всех этапов разрабатываемого ПО – от планирования и создания до выпуска готового продукта.
Может ли новичок стать тестировщиком
Работа тестировщиком – это чаще всего не про человека с техническим образованием, но, конечно, после получения «вышки» будет проще войти в сферу тестировщиков. Практика показывает, что порог входа в тестировщики довольно низкий, и стать им может кто угодно, главное – это желание. Об этом говорит глава департамента обеспечения качества ПО Veeam Softwar Игорь Кацев в своем интервью для hh.ru.
Также на сайте Software-Testing был проведен опрос среди тестировщиков, в ходе которого выяснилось, что образование тестеров разнится от людей без диплома до людей с двумя высшими образованиями: это и технари, и гуманитарии, и экономисты, и даже юристы.
Вот так выглядит статистика образования тестировщиков:
Востребована ли сейчас профессия тестировщика
Профессия тестировщика будет востребована, пока будет жить IT. Сейчас невозможно представить ни одну компанию без профессионального тестировщика, и здесь не так важно, крупная это компания или какой-то небольшой стартап. Без качественного тестирования ни один продукт не продержится долго на рынке: в один момент «полезут» баги, а вместе с ними начнут уходить клиенты.
Значимые площадки для поиска работы подтверждают популярность тестировщика:
- на hh.ru найдено более 7000 вакансий при запросе «Тестировщик»;
- indeed предлагает более 1000 вакансий.
Стоит также отметить, что мануальщиков берут на работу в крайне редких случаях. Большинству компаний нужны специалисты, которые умеют работать с кодом. В то же время мало кому нужны тестировщики, не умеющие вручную проводить тестирование. Как мы уже говорили выше, всем нужны универсальные солдаты, которые могут и писать код, и проверять все своими руками.
Также тестировщик может работать и на фрилансе. Таких заказов, конечно, не так много, но если постараться, то можно хорошо себя зарекомендовать и совмещать, например, тестирование приложений с основной работой.
На какую зарплату можно рассчитывать
Тестировщик
В зависимости от региона зарплата может сильно отличаться. Например, в Москве заработная плата может доходить до 150 000 рублей, тогда как в регионах она не превышает 75 000 рублей.
Изучить зарплату тестировщика по России вы можете на сайте trud.com.
QA-инженер
По данным hh.ru, зарплата QA начинается от 75 000 рублей и доходит до 360 000 и выше.
Как и куда развиваться тестировщику
Развитие тестировщика – это дорога со множеством путей. Некоторые становятся тестировщиками, чтобы в последующем уйти в более интересное звено, например в разработку. Другие концентрируются на тестировании и из «малышей» за несколько лет вырастают в мидлов, которые самостоятельно составляют тест-кейсы и прописывают всю необходимую документацию.
Следом за мидлами идет должность старшего специалиста, в которую входит планирование работы по тестированию и контроль младших специалистов.
Когда специалист перерастает в человека, который повидал все и досконально знает, как проводить тестирование IT-продукта, он становится тимлидом – руководителем команды тестировщиков.
Таким образом, происходит карьерный рост тестировщиков различных продуктов. Время получения той или иной квалификации в большинстве случае зависит от человека: как он себя проявляет, насколько ему это интересно и так далее.
Тестировщик – каким он должен быть?
Если вы планируете стать тестировщиком, то вот список личных качеств, который должен хотя бы частично характеризовать вас:
- Усидчивость. Найти ошибки в программе не всегда просто, иногда требуется приложить немало усилий, чтобы наткнуться на то, что «сломает» программу. Профессиональный тестировщик всегда знает, что не бывает программ без ошибок, а бывают лишь те, которые были плохо продиагностированы.
- Критическое мышление. Важно уметь анализировать полученные данные и получать из них необходимую информацию.
- Максимальная внимательность. Следует уделять внимание всем деталям, даже самым неочевидным.
- Умение работать в команде. Взаимодействие в команде – один из важнейших навыков, которым должен обладать тестировщик. Потребуется постоянно быть на связи с дизайнером, разработчиками и другими специалистами.
- Желание сделать продукт лучше. Следует не просто выполнять поставленную задачу, но и хотеть усовершенствовать продукт компании. Без заинтересованности в получении «идеального» продукта не может идти никакой речи о стабильности и популярности продукта, не говоря уже о его тестировании.
- Умение подробно составлять описание тестов. Если вы нашли все проблемы программы, то это отлично, но стоит описать их максимально детально, чтобы в последующем у разработчиков не возникло вопросов.
- Стремление стать лучше. Чтобы добиться успехов, следует быть в теме. Необходимо регулярно изучать техническую литературу, посещать различные форумы и постоянно совершенствоваться – только в таком случае можно говорить о высоком уровне тестировщика.
Самое главное – это, конечно же, гореть своим делом. Если вы просто хотите стать тестировщиком, потому что там много платят, то это ни к чему не приведет.
Что должен знать тестировщик
Базовый набор скиллов тестировщика включает в себя:
- знание основ тестирования, его видов и методов;
- знание языка запросов SQL, умение работать с базами данных;
- знание языков программирования;
- знание систем контроля версий: Git, CVS;
- составление тест-планов, чек-листов, тест-кейсов;
- понимание приоритетов дефекта;
- умение правильно составлять дефекты;
- знание методологий разработки ПО;
- понимание того, где и как снимать историю работы приложения – логи;
- для мобильного тестирования: понимание отличий Android от iOS.
Дополнительно к этому следует изучить инструменты для ручного и автоматического тестирования:
- системы для создания тест-кейсов и отслеживания ошибок,
- файловые менеджеры, текстовые и XML-редакторы,
- генераторы тестовых данных.
Также потребуется знание английского языка, без него, к сожалению, сегодня никуда. Он пригодится для чтения и заполнения технической документации.
Плюсы и минусы профессии
Как и в любой сфере, у тестировщика есть свои плюсы и минусы. Из плюсов можно выделить следующее:
- Карьерная лестница. Как мы уже говорили выше, тестировщик может стать как старшим специалистом, так и руководителем.
- Низкий порог входа. При правильном подходе и огромном желании тестировщиком может стать каждый, даже человек, который только что закончил школу.
- Можно работать удаленно. Тестировать удобно и на фрилансе, и в штате, и в крупной фирме, и в развивающемся стартапе.
Из минусов можно выделить:
- Много однотипной работы. Новичкам, как правило, не доверяют что-то серьезное, а дают лишь однотипные задачи, которые на начальном этапе могут показаться очень скучными и неинтересными.
- Тестировщиков не любят. Часто тестировщиков не очень любят разработчики, потому что они указывают на ошибки. Бывает даже такое, что в крупных IT-компаниях тестировщики и разработчики находятся на разных этажах, чтобы не пересекаться друг с другом.
Также стоит учитывать, что тестировщик – это обширная профессия, которая требует знаний во многих сферах: программировании, архитектуре приложений, дизайне.
Где учиться на тестировщика
Есть три варианта: изучить все навыки самостоятельно, окончить университет или пройти онлайн-курсы.
В первом случае все полностью бесплатно и в ваших руках, но это довольно долгий путь, закончить который по силам не всем. Потребуется изучить много документации, учебников, форумов, обучающих видеоуроков на YouTube. Базовые знания вы, конечно, сможете получить довольно быстро, но вот хватит ли их для получения работы – тут все зависит от вас. Может быть, вам повезет, и вас возьмут стажером.
Второй путь – университет, этот путь тоже долгий, и далеко не все его проходят до конца. Однако на таком пути вы получите навыки не только тестировщика, но и квалифицированного инженера, программиста. На сайте postupi.online представлено более 180 вузов России, где можно отучиться на тестировщика.
И третий путь – пройти онлайн-курсы. Это довольно короткая дорога, однако не такая радужная, как казалось бы. Во-первых, курсы могут быть крайне плохими. Вы получите сертификат, но особых знаний не будет, что бывает довольно часто. Во-вторых, сертификат онлайн-курсов, как правило, ничего не значит, так как получить его может каждый, поэтому плюсов в этом перед работодателем практически не будет.
Заключение
Профессия тестировщика – это отличный выбор для тех, кто хочет уйти в IT-сферу. Глубоких знаний на начальном этапе не потребуется, но нужно будет много учиться.
А вот если вы планируете стать QA-инженером, то здесь базовых знаний не хватит. Потребуется сначала поработать тестировщиком, чтобы полностью углубиться в сферу QA.
Гостем нового выпуска подкаста «Быть» стал Ваня Морщагин, руководитель QA-направления в Timeweb. В видео вы узнаете, чем тестировщик отличается от QA-инженера, какие ветки развития есть в quality assurance в целом, нужен ли вуз и куда можно расти из QA. Послушать подкаст можно на Apple Podcasts, Яндекс.Музыка и Spotify.
А теперь пришло время пройти небольшой тест на профориентацию :)
Комментарии