Что входит в обязанности тестировщика в айти компании

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

Устроился в компанию CPS Labs, из которой затем вышла компания iSpring.

Собеседование было простым:

— Здравствуйте. Хочу у вас работать.

— Хорошо. Вот тестовое задание на программиста. А ещё посмотри на наш продукт: опиши, что тебе понравилось и (особенно) не понравилось.

Вечером того же дня я изучил продукт и написал своё мнение. На следующий день звонок:

— Мы тут подумали и решили, что нам нужен тестировщик. Пойдёшь?

— Да!

Но такой метод уже не сработает. В те времена можно было прийти без особых навыков и учиться «по ходу дела». Сейчас даже к начинающим тестировщикам предъявляются определённые требования. Для начала надо знать как минимум теорию, пройти базовые курсы.

О развитии карьеры и заработке. Я жил в Йошкар-Оле, а в 2009 году решил перебраться в Санкт-Петербург. Но через год вернулся — оказалось, что уровень зарплат тестировщиков в регионах не сильно отличался от зарплат в Санкт-Петербурге.

Сумма «зарплата минус аренда и прочие расходы» оказалась в пользу родного города. С 2014 года я работаю в международной компании, офис которой открылся в Йошкар-Оле. Здесь поле для развития ещё шире: много проектов, коллеги со всего мира. Язык общения, конечно, английский.

Тестирование — точка входа в ИТ? Я не согласен с тем, что тестировщик сегодня — это лёгкая точка входа в ИТ. Отрасль развивается, требования даже к начинающим тестировщикам растут.

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

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

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

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

Был момент, когда я ушёл из тестирования в аналитику. Но вернулся обратно — работать тестировщиком мне нравится больше. Хотя, несомненно, из тестировщиков проще перейти в разработчики, аналитики или менеджеры, чем вообще без опыта в ИТ.

О зарплате. Моя зарплата росла плавно на протяжении карьерного пути. Сегодня диапазон довольно широк, на сайтах с вакансиями можно найти вакансии от 15 до 150 тысяч рублей: зависит от города, опыта, знаний и других условий.

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

  • Кто такой тестировщик, за что отвечает и чем занимается
  • За что отвечает тестировщик
  • Чем занимается тестировщик
  • Работа тестировщиком: где работают QA-инженеры, сколько зарабатывают, какие вакансии есть на рынке
    • Сколько зарабатывают тестировщики
  • Как стать тестировщиком: что надо знать и где учиться
    • Что должен знать и уметь тестировщик, какие софт-скилы нужны этому специалисту
    • Где учиться тестированию
  • Профессия глазами профессионалов: комментарии экспертов о работе тестировщиков, перспективах и обучении
    • Константин Виноградов: после курсов программистов можно смело становиться тестировщиком
    • Станислав Урюпин: тестированию можно научиться только на практике
  • Заключение: работодателям нужны тестировщики, а соискателям нужно учиться и практиковаться

Кто такой тестировщик, за что отвечает и чем занимается

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

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

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

Станьте тестировщиком на Хекслете:
У нас есть большая профессия «Инженер по тестированию» — с полным набором теории и практики для дальнейшего устройства на работу, большим карьерным треком и лучшими инженерными практиками

В широкое понятие QA входит ещё одно направление деятельности: QC, quality control или контроль качества. Инженеры QC контролируют продукт на этапе разработки и поддержки. Тестирование программного обеспечения — один из инструментов контроля качества. То есть тестировщик проверяет приложение в рамках мероприятий по контролю качества (QC), которые входят в комплекс работ по обеспечению качества (QA).

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

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

Есть ручное и автоматизированное тестирование ПО. Соответственно, специалисты по ручному тестированию проверяют приложения вручную, а специалисты по автоматизированному тестированию работают с помощью программ.

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

Стратегией чёрного ящика называется подход, при котором объект тестируется без использования знаний о его внутреннем устройстве.

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

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

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

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

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

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

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

Работа тестировщиком: где работают QA-инженеры, сколько зарабатывают, какие вакансии есть на рынке

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

QA-инженеров и QC-тестировщиков часто привлекают команды, которые используют DevOps. В таких командах разработка, тестирование и поддержка ПО выполняется циклически с использованием подходов Agile или Scrum.

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

По данным QA-инженера Антона Якутовича, на рынке есть несколько уровней тестировщиков: новички, специалисты среднего уровня, опытные специалисты и эксперты по автоматизации тестирования. Зарплаты на каждом уровне отличаются от предыдущего примерно в 1,5 раза.

По состоянию на весну 2022 года на сайте hh.ru по запросу «тестировщик» есть 5008 вакансий во всех регионах России. Сотрудников ищут такие компании, как «Сбербанк», «Билайн», МТС, «Магнит» и другие. Максимальная зарплата составляет 430 000 рублей в месяц. Минимальная указанная зарплата — от 40 000 рублей в месяц.

Большая часть вакансий открыта в Москве и Санкт-Петербурге, но такие специалисты требуются и в других регионах. Например, в Новосибирской области открыто 188 вакансии по тестированию, в Татарстане — 193 вакансий, в Свердловской области — 185 вакансий.

Как стать тестировщиком: что надо знать и где учиться

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

Что должен знать и уметь тестировщик, какие софт-скилы нужны этому специалисту

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

Понадобятся знания основ программирования, протокола HTTP, умение работать с базами данных и системами контроля версий, хотя бы базовое знание HTML и CSS.

Тестировщик должен уметь работать с командной строкой, знать браузеры и инструменты разработчиков. Также понадобится умение работать с инструментами автоматического тестирования, например, HP-UFT (бывший QTP), Selenium, Sahi и так далее.

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

Где учиться тестированию

На Хекслете есть профессия «Инженер по тестированию». Вы можете за четыре месяца с нуля освоить необходимые навыки.

Новая профессия состоит из трех основных модулей:

  1. Основы тестирования ПО. Студенты знакомятся с основами тестирования и учатся проводить ручное тестирование веб-приложений. Узнают, как составлять чек-листы и тест-кейсы для поиска ошибок, а также как оформлять понятные баг-репорты о результатах тестирования. В этом же блоке — организация процесса тестирования, сроки и дедлайны в работе тестировщика, анализ требований к продукту и изучение техники тест-дизайна.
  2. Введение в автоматизацию. Погружение в теорию и стратегию автоматизации, работа с Selenium, разбор принципов построения нагрузочных тестов на примере Apache Jmeter и особенностей мобильных приложений, работа с эмуляторами.
  3. Практика в тестировании. Модуль с большим проектом, в рамках которого студенты применяют полученные знания на практике и участвуют в тестировании реального проекта.

Всем студентам профессии «Инженер по тестированию» будет доступен карьерный трек — это наш сервис для тех, кто ищет первую работу в IT. Мы расскажем, как правильно составлять резюме и писать сопроводительные письма. А еще подберем вакансии и стажировки в партнерских компаниях и подготовим к собеседованиям.

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

Также у нас есть полезные для будущих тестировщиков курсы и интенсивы. Вот некоторые из них:

  • Интенсив по тестированию фронтенда.
  • Трек по тестированию на JS.
  • Трек по тестированию на PHP.
  • Основы командной строки.
  • Системы контроля версий.
  • Протокол HTTP.
  • Автоматическое тестирование.
  • Продвинутое тестирование.
  • Изучение английского языка.

Если вы владеете английским языком, можете пройти курсы на известных англоязычных площадках: Udacity, edX, Udemy, Coursera и так далее.

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

Читайте также
Как благодаря Хекслету я стал QA-инженером и уехал в США: история успеха студента.

Профессия глазами профессионалов: комментарии экспертов о работе тестировщиков, перспективах и обучении

Мы обратились к опытным специалистам в сфере QA, чтобы узнать о нюансах профессии тестировщик. Они ответили на несколько вопросов о профессии.

Константин Виноградов: после курсов программистов можно смело становиться тестировщиком

Виноградов

Константин Виноградов, QA-инженер


Дмитрий Дементий: Чем работа тестировщика отличается от работы программиста? И что есть общего в работе тестировщика и программиста?

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

Конечно, есть отдельные специализации, такие, как специалист по автоматизации тестирования (test automation engineer) или разработчик в тестировании (software development engineer in tests), чья работа почти идентична работе программиста. Она предполагает написание кода автоматических тестов и тестовых фреймворков.

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

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

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

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

Д. Д.: Кем проще стать: разработчиком или тестировщиком?

К. В.: Тестировщиком. Но не потому, что им быть проще. Просто порог входа ниже. Карьера разработчика начинается с позиции junior software developer, которая требует наличия минимальных знаний: язык программирования, основные алгоритмов и структур данных, знакомство с фреймворками и так далее. Чтобы стать джуном, ты уже должен быть разработчиком.

Карьера тестировщика начинается с уровня специалиста по ручному тестированию (manual testing): есть описание тестов, делай руками, вноси результаты в отчет. Очевидно, что начинать во втором случае проще.

Д. Д.: С финансовой точки зрения к чему выгоднее стремиться: к позиции тестировщика или программиста?

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

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

Д. Д.: Чтобы проверять написанные программистами приложения, тестировщик должен разбираться в коде лучше программистов. Этот тезис верный или нет?

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

Д. Д.: Можно ли рассматривать позицию тестировщика как один из простых способов войти в IT?

К. В. : Вполне.

Д. Д.: Какими инструментами пользуются тестировщики: окружение, редакторы и IDE, библиотеки и фреймворки?

Все зависит от продуктового стека и того, чем автоматизируется тестирование. У меня:

  • Linux/macos;
  • VScode;
  • Pytest;
  • Jenkins;
  • Gitlab.

Д. Д.: Где можно научиться тестировать ПО? Можно ли стать тестировщиком после курсов программирования?

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

Станислав Урюпин: тестированию можно научиться только на практике

alt_text

Станислав Урюпин, QA-инженер, руководитель волонтёрского образовательного проекта Sciberia


Дмитрий Дементий: Чем работа тестировщика отличается от работы программиста? И что есть общего в работе тестировщика и программиста?

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

Д. Д.: Кем проще стать: разработчиком или тестировщиком?

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

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

Д. Д.: С финансовой точки зрения к чему выгоднее стремиться: к позиции тестировщика или программиста?

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

Д. Д.: Чтобы проверять написанные программистами приложения, тестировщик должен разбираться в коде лучше программистов. Этот тезис верный или нет?

С. У.: Этот тезис не является верным. Лучше самих программистов в коде не может и не должен разбираться кто-либо ещё. Тестировщики работают чаще всего по стратегии черного ящика, когда непосредственный доступ к коду закрыт для анализа. Зато тестировщику доступны различные способы и инструменты для определения работоспособности программ.

Д. Д.: Можно ли рассматривать позицию тестировщика как один из простых способов войти в IT?

С. У.: Можно, но лишь отчасти. Всё зависит от конкретных целей. Например, часто новички работу в тестировании рассматривают как промежуточный этап перед переходом в разработку. Тестирование и разработка — это разные области деятельности. В каждой из них найдутся характерные особенности, без которых продуктивная работа невозможна. Потому неизбежно придётся тратить ресурсы на погружение в предметную область.

Если цель — пройти в разработчики или иные направления работы в IT, такие, как DevOps или аналитика, стоит отдельно изучать эти направления. Но получится ли это делать без падения продуктивности работы в тестировании, вопрос открытый.

Д. Д.: Какими инструментами пользуются тестировщики: окружение, редакторы и IDE, библиотеки и фреймворки?

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

Д. Д.: Где можно научиться тестировать ПО? Можно ли стать тестировщиком после курсов программирования?

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

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

Заключение: работодателям нужны тестировщики, а соискателям нужно учиться и практиковаться

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

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

Профессия: тестировщик

Время на прочтение
14 мин

Количество просмотров 138K

Тестировщик: Это баг или фича?
Разработчик: Пока что это фича.
bash.im

Инженер по тестированию — моя первая специальность в ИТ-сфере в далёких уже 2010-х, как, пожалуй, и у многих. Это было классическое «войти в айти»: на тот момент имелось только экономическое образование и 4 года опыта аналитической работы в телекоме. Из скиллов: горящие глаза, большое желание, среднее знание администрирования UNIX и выученная наизусть модель OSI (без особого понимания, что с ней делать дальше). 87 вопросов на собеседовании (от «что такое chmod 777» и «как работает ssh» до «расскажите о принципах работы TCP и поясните на примерах») — и должность инженера по тестированию у меня в руках. Чуть позже за 2 года было всё: гордость, отчаяние, разочарование, отличная работа, быстрый рост, крутой проект и т.д. Если бы я тогда знал о профессии тестировщика чуть больше, не было бы многих неприятных минут и часов. Ну, пусть тогда их не будет у тех, кто только выбирает свой путь или меняет его направление — эта статья для вас. 

Кто это?

Тестировщик (буду называть именно так, чуть позже объясню, в чём причина оговорки), он же QA-инженер (Quality Assurance) — это специалист, который проверяет качество программного обеспечения и уровень его соответствия заранее определённым потребностям и ожидаемым результатам. В своей работе он использует различные инструменты, стратегии тестирования, включается в SCRUM-команды и т.д. 

Иногда выделяют два основных «вида» тестировщиков.

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

    Вот это тестер, а парни и девчонки всё же тестировщики! (минута айтишного шовинизма)

  2. Инженер по тестированию — специалист уровня от junior до lead, который осуществляет разнообразные виды тестирования, в том числе автоматизированное, самостоятельно пишет тест-планы, в некоторых случаях даже даёт рекомендации по исправлению багов или исправляет их самостоятельно (в небольших компаниях).

Это очень укрупнённая и не совсем серьёзная классификация. На самом деле тестировщики бывают разные: специалисты автоматизированного тестирования, тестировщики СУБД, аналитики тестирования, разработчики-тестировщики, тестировщики-DevOPs и проч. Всё зависит от того, какие скиллы соединяет в себе каждый конкретный специалист. 

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

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

Вот какие этапы вы, скорее всего, пройдёте на работе тестировщиком «с нуля».

Первые 2-3 месяца — обучение. Если компания хорошая и продвинутая, вам дадут наставника, который поможет освоить все принятые в компании методологии тестирования, покажет оборудование, расскажет о ПО, задачах этого ПО и обязательно о клиентах. Иногда по итогам такого вот обучения с наставником вам даже придётся сдать небольшой экзамен (мини-собеседование). Это совершенно нормально, т.к. именно QA является важным подразделением на пути к клиенту и его хорошая работа — залог того, что ваш продукт в чьём-то бизнесе начнёт работать, а не лажать. Если компания не особо заботится о развитии сотрудников, вам придётся достигать всего самому, но я не скажу, что это очень плохо: при самостоятельном обучении погружение в ПО происходит гораздо глубже и вы понимаете значительно больше того, что расскажет опытный «ментор» о продукте, который ему отлично знаком. 

Новичков в тестировании любят — иногда они находят самые интересные и неожиданные баги, на которые у давно работающих сотрудников «глаз замылился».

История. В одну компанию пришла новенькая девочка, которая никак себя не проявляла, тихо изучала софт и принципы его работы с разным оборудованием. Когда она только-только приступила к тестированию, от большого и злого федерального клиента прилетел critical (самый злой баг, хуже только блокирующий) — ПО отказывалось закрываться. Перелопатили весь код, орали друг на друга, проверили все соединения и т.д. Через три часа метаний девочка пропищала:
— А тут крестик неактивный.
Действительно, просто не работала одна-единственная и весьма очевидная функция. Но профессионалы забурились в дебри, а увлечённый дилетант сразу заметил ненормальное поведение.

Далее — от нескольких месяцев до 2 лет — ручное тестирование. Вы будете выполнять большинство видов тестов в ручном режиме, начнёте составлять свои тест-планы и взаимодействовать с разработчиками. На этом этапе наступает тот самый день сурка, когда кажется, что кони бегают по кругу и дальше — рутина и скука. Это не так. В этот промежуток времени инженер по тестированию наращивает интегральное понимание тестирования, учится работать с программистами, видеть не только сам баг, но и анализировать его возможные причины. Главное, что приходит за это время — осознание того, что ручное тестирование должно остаться в прошлом веке и… настаёт время перехода к автоматизации тестирования, когда вы начинаете осваивать язык программирования (или использовать ранее освоенный) и пишете свои скрипты — те, которые считаете нужными для работы с ПО. Наступает реально крутая часть работы. (Впрочем, многие тестировщики, особенно девушки, предпочитают остановиться на ручном тестировании и стать реальными асами именно в нём — кстати, весьма полезные сотрудники и, как показывает опыт, лучшие наставники для новичков).

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

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

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

тестеры

тестировщики, быстро прояснится.

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

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

▍Плюсы

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

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

▍Минусы

  1. Команда недолюбливает тестировщиков :-) Нет, ну вы вот сами прикиньте: вы делаете продукт, пишете код, документацию, а потом на него нападает кучка коллег и заводит баг за багом на каждую мелочь. Ну как это вынести в адекватном состоянии?! Хуже только быть единственным тестировщиком в команде — тогда всё, ты конченая сволочь. Шутки шутками, но нередко команда считает, что именно тестировщики задерживают выпуск релизов и клиентских сборок. В общем, не любят люди, когда находят ошибки в их работе. 

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

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

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

Где нужен?

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

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

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

ублюдкам

мешкам :-)  

Средняя заработная плата

Заработную плату будем смотреть на «Хабр Карьере». Возьмём данные за второе полугодие 2019 года, вне зависимости от владения тем или иным стеком. 

Для специалистов ручного тестирования:

Для специалистов автоматизированного тестирования:

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

Базовые требования к профессионалу

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

  • Опыт технической поддержки — это плотное изучение технологий в сжатые сроки, умение понимать проблемы и быстро сопоставлять их с причинами и путями решения + навыки документирования заявок. Отличная почва для старта карьеры тестировщика.
  • Основы программирования — желательно Java, SQL, Python, но сойдёт буквально всё.
  • Знание методологии Agile, умение встроиться в микро-команды. 
  • Основы Linux.
  • Основы архитектуры ПК.
  • Модель OSI и сети (базовое понимание, знание структуры заголовков пакетов и проч.). Практически сразу потребуется свободная работа с утилитой Wireshark.
  • Инструменты управления тестированием — Bugzilla, Jira или любой другой багтрекер.
  • Selenium — инструмент для автоматизации действий веб-браузера. Очень популярный инструмент тестирования. 
  • Желательно — понимание стратегий тестирований чёрного, белого, серого ящиков и осознание того, где вы наиболее хорошо применимы как специалист.

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

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

  1. Станьте QA-фрилансером, чтобы выполнять небольшие проекты по ручному тестированию. Платят мало, но вы научитесь мыслить как тестировщик, писать контрольные примеры и сообщать о результатах. 
  2. Если цель — тестирование веба (а это чаще всего), создайте свой кривой-косой, но полноценный сайт без шаблонов и готовых CMS. Так вы поймёте, как среда работает изнутри и будете знать места обитания всех типичных багов.
  3. Найдите программу любого курса по тестированию, ищите по ней материалы и накапливайте теоретическую базу, чтобы успешно пройти первое собеседование.

Важные личные качества

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

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

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

  • Умение надолго концентрироваться и сохранять внимание. К слову, иногда именно тестирование позволяет наработать это навык и сохранить его для дальнейшей карьеры.

Необходимость знания иностранных языков

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

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

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

У меня был пример, когда понадобился тестировщик со знанием японского и отдельно — со знанием немецкого в том числе для работы с клиентами (удалённо). Так вот, нашли, обучили и дали зарплату выше разработчиков в компании. Потому что специалисты уникальные. Они и сейчас не пропали :)

Где учиться

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

Принципиального обучения на инженера по тестированию в России не существует.

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

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

Лучшие книги и средства обучения

▍Книги

  • Арбон Джейсон, Каролло Джефф, Уиттакер Джеймс «Как тестируют в Google» — познавательная книга, которую лучше читать уже с каким-то опытом, как минимум junior. А, впрочем, о чём я! Читайте и наслаждайтесь на любом уровне, очень полезно и неплохо написано.
  • Борис Бейзер «Тестирование черного ящика. Технологии функционального тестирования программного обеспечения и систем» — классика литературы для тестировщиков. Это скорее академический учебник о тестировании, весьма толковый.
  • Гленфорд Майерс, Том Баджетт, Кори Сандлер «Искусство тестирования программ» — библия тестирования (на мой субъективный взгляд).
  • Роман Савин «Тестирование Дот Ком, или Пособие по жестокому обращению с багами в интернет-стартапах» — реально добрая, немножко смешная и в то же время умная книга для начинающих и постарше. Мне бы она зашла как настольная книга тестировщика.

▍Онлайн-обучение

  • Бесплатный базовый курс Яндекс.Практикума (брать ли платный расширенный — решать вам по силам и потребностям) — хороший, толковый курс от практиков.
  • www.learnqa.ru — онлайн-школа тестирования (платная, нескольк методологий тестирования, разные уровни)
  • YouTube — сотни обучающих видео, есть толковые
  • QA Club Сообщество тестировщиков Тестирование ПО — общалка тестировщиков ВКонтакте (сообщество)

▍Полезные статьи на Хабре о самой профессии

  • Тестирование. Фундаментальная теория / Хабр
  • Тестировщик — больше, чем профессия / Хабр
  • Краудтестинг, или Где взять опыт для первой работы в тестировании

Ну и вообще хаб «Тестирование IT-систем» к вашим услугам. На Хабре очень много полезного по этой теме.

▍Тусовки тестировщиков

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

▍Википедия

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

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

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

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

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

Мифы профессии

▍Тестировщики — «низшая каста» ИТ-отрасли 

Вот сейчас обидно было. Или это как у ВДВ, но «не кодил — не айтишник»? Отдел тестирования — это по сути настоящий отдел контроля качества, который не позволит компании опозориться перед клиентом (если где-то упадёт навороченный костыль, хе-хе), вовремя определит явные ошибки UI/UX, проверит внутреннюю логику работы приложения или сервиса. Комплексная работа тестировщиков всех ИТ-компаний мира обеспечивает определённый уровень качества и сохраняет миллионы денег компаний, которые могли бы потеряться на жалобах конечных пользователей на бесконечные баги. 

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

▍Тестирование — это просто поиск ошибок

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

▍Тестировщикам мало платят

На первых порах это действительно не самая оплачиваемая работа. Согласитесь, компании обидно платить сотруднику, который по большей части учится. Но постепенно заработная плата растёт и дальше зависит от компании: когда я работал, я получал всего на 3 тыс. руб. меньше разработчика своего уровня (middle), но я знаю компании, где тестировщики получают и больше, и меньше, чем разработчики. Многое зависит от профиля деятельности компании и скиллов тестировщика. Понятное дело, что автоматизатор будет стоить дороже. Но формулировка «мало платят» точно не про тестирование.

▍Не применяются технические навыки

Я уже выше перечислил примерные действия тестировщиков, и все они строго инженерные. Хоть в тестирование можно попасть и без технического образования, работать без технического бэкграунда не получится: вы либо шустро всему научитесь, либо пойдёте в нетехнические отделы, потому что «голый гуманитарий» — горе в отделе QA. Да, на каком-то этапе от вас не потребуется глубокое владение языками программирования (но вы же запомнили, что тестировщики со знанием разработки выше ценятся?), но инженерные, админские и общетехнические знания вам ох как пригодятся. Вы их будете использовать буквально каждый день.

Главный совет

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

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


Друзья, а вы прошли через работу в тестировании? Каким он был, ваш первый баг или самый глупый, смешной, может, даже страшный? Время жутких историй!

Предыдущие серии «Профессии…»

→ Профессия: бэкенд-разработчик
→ Профессия: фронтенд-разработчик
→ Профессия: системный администратор

#статьи

  • 8 фев 2021

  • 13

Кто такой тестировщик и как им стать с нуля

Разбираемся, кому подходит профессия и что нужно уметь QA-специалисту.

 vlada_maestro / shutterstock

Марина Демидова

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

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

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

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

Неполиткорректные разработчики из-за этого когда-то обидно называли тестировщиков «обезьянками-кликальщиками». Термин был так распространён, что Android назвал свой инструмент для автоматизации тестирования MonkeyRunner — в том смысле, что он как обезьянка, только быстрее.

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

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

Пример простого тест-кейса

Тестировщик должен скрупулёзно проверить, что будет, если совершить какое-то действие, и соответствует ли результат ожидаемому.

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

Нужно предусмотреть все возможные и невозможные варианты. Что будет, если пользователь введёт цифры вместо букв? А что, если у него компьютер глючный? А вдруг сразу много пользователей будут работать и перегрузят систему?

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

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

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

Порог входа в тестирование довольно низкий. Чтобы стать тестировщиком, не требуется техническое образование. Главное, чтобы человеку была интересна сфера IT и он хотел развиваться в этом направлении. Об этом говорит в своём интервью на hh.ru руководитель департамента обеспечения качества ПО Veeam Software Игорь Кацев.

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

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

  • в декабре 2020 на HeadHunter было более 4 000 вакансий тестировщиков ПО;
  • больше 12 000 — на Trud.com;
  • на Indeed — около 1 000, и это только по России.

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

Вот, например, скрин с hh.ru, где работодатель перечисляет требования к тестировщику:

Большим спросом пользуются универсалы, владеющие современными методами тестирования, знающие языки программирования, умеющие составлять и автоматизировать тесты, например:

Заработная плата тестировщика в регионах — от 55 до 60 тысяч рублей, а в Москве — 80–150 тысяч.

Новички могут рассчитывать на зарплату от 40 тысяч рублей, специалисты высокого уровня получают 220–300 тысяч.

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

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

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

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

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

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

  • Security-тестировщики — проверяют безопасность программы;
  • Performance-тестировщики — тестируют, как она ведёт себя при возрастающей нагрузке.
  • Usability-тестировщики — проверяют, насколько с ней удобно работать.

Кроме того, в тестировании очень важны личные качества специалиста. Вот список основных, без которых точно не обойтись:

  • Усидчивость и настойчивость — чтобы терпеливо искать дефекты. Хороший тестировщик уверен, что программ без ошибок не бывает, бывают лишь плохо диагностированные.
  • Критическое мышление, умение анализировать информацию.
  • Внимание к мелочам, максимальная дотошность, чтобы постоянно интересоваться: «А что будет, если нажать сюда? А если ввести другой символ?»
  • Коммуникабельность и умение работать в команде: тестировщику приходится постоянно взаимодействовать с разработчиками, дизайнерами, бизнес-аналитиками, представителями заказчика.
  • Терпение и самообладание, потому что разработчики не слишком любят исправлять ошибки. Иногда тестировщику приходится не раз и не два напоминать о найденном баге. Он должен быть настойчивым, но при этом уметь сохранять хорошие отношения в команде.
  • Ответственность и здоровый перфекционизм, чтобы постоянно стремиться улучшить качество разрабатываемого продукта.
  • Умение чётко формулировать свои мысли, чтобы грамотно составлять планы и тест-кейсы. Если тестировщик нашёл ошибку, он должен подробно и понятно описать, при каких условиях она возникает, чтобы разработчики могли быстро её исправить.
  • Стремление развиваться — осваивать новые методики тестирования, чтобы оставаться востребованным. Нужно постоянно читать техническую литературу, участвовать в конференциях и семинарах, смотреть видеокурсы.

От тестировщика требуется:

  • знание основ тестирования, его видов и методов;
  • умение составлять тест-кейсы, тест-планы;
  • знание языка запросов SQL, умение работать с базами данных;
  • знание языков программирования;
  • знание систем контроля версий: Git, CVS и тому подобных.

Кроме того, тестировщик должен владеть инструментами ручного и автоматического тестирования. Это могут быть:

  • системы для создания тест-кейсов и отслеживания ошибок.
  • файловые менеджеры, текстовые и XML-редакторы.
  • генераторы тестовых данных и другие.

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

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

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

Научитесь: Профессия Инженер по тестированию
Узнать больше

Профессия тестировщик

Оглавление:

  1. Кто это такой
  2. Чем занимается QA и QC
  3. Обязанности
  4. Плюсы и минусы работы
  5. Что нужно знать
  6. Сколько получает
  7. Где искать заказы тестировщику
  8. Где учиться профессии
  9. Как подготовиться к собеседованию
  10. Что посмотреть, чтобы понять суть профессии

Тестировщик (от англ. Tester, также Quality Assurance или QA, либо — Quality Control или QC) — это специалист для тестирования программных продуктов, их компонентов, иных систем. Кроме тестирования приложений такой специалист занимается обнаружением ошибок и дефектов, отладкой кода, сохранением заявленной функциональности приложения. Косвенно тестер может влиять на юзабилити продукта и даже улучшать процесс разработки глобально.

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

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

Вообще термин тестировщик или tester — довольно широкий: это может быть Test Engineer, QA Analyst, Quality Control, QA Engineer, Software Developer in test, QA Automation Engineer, Software Test Engineer. И круг обязанностей каждого из перечисленных специалистов будет значительно различаться: не только в зависимости от специализации, но и от компании к компании (ведь в каждой компании свои требования к тому же QC или QA).

Рабочий цикл QA-специалиста

Рабочий цикл QA-специалиста

Итак, чем занимается такой специалист? Вот некоторые обязанности:

  • Проверка технических требований проекта в отношении модуля предварительный сертификации или для других задач.
  • Управление требованиями и ведения репозитория тестирования с помощью QC.
  • Разработка тест-кейсов.
  • Устранение неполадок в тестировании.
  • Выполнение модульного тестирования.
  • Проверка функциональности продукта.
  • Интеграционное тестирование.
  • UI тесты.
  • Проверка кроссбраузерности. 
  • Регрессионное тестирование.
  • Системное тестирование.
  • Анализ бизнес-требований, системных требований, реальных данных.
  • Анализ новых тестовых случаев из определённых наборов или иных паттернов.
  • Использование TFS для сообщения об ошибках и ведении бэклога продукта.
  • Проверка баз данных на различных этапах разработки.
  • Отслеживание дедлайнов проекта, релизов и документов по процессу разработки.
  • Разработка автоматизированных сценариев тестирования с использованием скриптов на различных языках, например, на Python.
  • Планирование заданий по тестированию, проверке и отладке компонентов, мониторинг разных исполняемых версий продукта.
  • Предоставление своевременной и корректной информации о всех найденных дефектах состояния продукта и соответствующих метрик — для облегчения отчётности QA.
  • Тестирование мобильных приложений на различных платформах, затрагивая полный стек на нескольких версиях Android и iOS.
  • Использование фреймворхов для различных задач, например, для пакетного выполнения тестовых сценариев / повторение кода, эксплуатации уязвимостей сетевой базы.
  • Выполнение тестирования с использованием специализированного ПО, например, JUnit.

Остались вопросы?

Укажите ваши данные, и мы вам перезвоним

Обязанности работы

Давайте резюмируем обязанности разных видов тестировщиков.

Важно: в каждой компании существует своя иерархия ролей и обязанностей для команды тестирования ПО. Ниже мы даем каноничные обязанности таких специалистов.


Test Analyst

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

QA Engineer

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

Manual Testing Engineer

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

QA Automation Engineer

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

Software Test Architect

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

Test Manager

  • Играет ключевую роль в командах.
  • Считается руководством ответственным за весь результат.
  • Контролирует аналитиков, архитекторов, инженеров QA для получения результатов, соответствующих ожиданиям клиента.
  • Готовит стратегию тестирования для проектов.
  • Следит за результатами работы каждого в команде.
  • Рассчитывает бюджет на тестирование и оценивает усилия.
  • Контролирует рабочий процесс.

QA Lead

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

Software Tester

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

  • Анализ спецификации системы.
  • Участие в создании плана проверок.
  • Подготовка сценариев проверок.
  • Документирование тест-кейсов.
  • Сбор данных для тестов.
  • Создание наборов тестов.
  • Выполнение тестовых заданий.
  • Отправка данных о дефектах.
  • Отслеживание дефектов.
  • Выполнение регрессионного тестирования.
  • Изменение тест-кейсов с повторение процесса.

Остались вопросы?

Укажите ваши данные, и мы вам перезвоним

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

Начнем с плюсов работы. Многие выбирают индустрию программного обеспечения для построения карьеры не просто так — есть несколько действительно интересных плюсов.

Плюсы работы QA и QC

1. Высокий спрос. Хорошие тестировщики всегда находят работу. Потребность в них остро испытывает разработка, тестирование и поддержка. Каждая IT-компания в России и мире всегда нуждается в команде тестировщиков, которые могли бы сопровождать, тестировать и поддерживать программное обеспечение. Работа в тестировании помогает учиться, расти, получать деньги. А ещё — вы сможете добиться значительных успехов в качестве разработчика программного обеспечения, если захотите переквалифицироваться в него будущем.

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

3. Фактор денег. QA- и QC-специалисты получают хорошие деньги. Чем больше они работают и чем больше их опыт, тем больше они зарабатывают.

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

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

6. Возможность работать за границей. QA и QC получают шанс работать за границей. На них есть постоянный спрос у компаниЙ из США, Великобритании, Швейцарии, Германии, Франции, Японии и Канады.

Минусы работы QA и QC

Давайте ознакомимся с минусами этой профессии:

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

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

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

4. Отсутствие отдыха по выходным. Чтобы закончить проект в срок, тестировщики могут работать и по 10-15-20 часов в день, и даже — по выходным. Поэтому поддержание физической формы — один из способов избавиться от вялости. Постоянный набор дедлайнов по разным проектам — стрессовая ситуация, в которой приходится находиться каждому QA. И к этому также нужно быть готовым.

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

6. Отсутствие социальной активности. Высокое давление может лишить вас семьи, родственников, друзей и знакомых. 

Остались вопросы?

Укажите ваши данные, и мы вам перезвоним

Что нужно знать тестировщику 

Работа в сфере QA научила автора статьи довольно многому. Я сталкивался с различными инструментами, как на начальном, так и на продвинутом уровне. Главное, что я заметил:

  • Требования проекта сильно влияют на выбор инструментов.
  • Бюджет иногда ограничивает вас в выборе инструмента.
  • Специфические функции, необходимые в инструментах, также влияют на выбор инструмента.
  • В разным компаниях привыкли к разным инструментам. Особенно активно используются семь инструментов: Selenium, Testing Whiz, SauceLabs, Browserstack, Cross Browser Testing.

Как выбрать инструмент: 

  1. Если у вас есть хотя бы базовое понимание автоматизации тестирования — вы должны хотя бы раз попробовать Selenium.
  2. Если у вас хороший бюджет — стоит выбрать Browserstack.
  3. Если нужен экономичный инструмент со всеми функциями и хорошим юзабилити — попробуйте LambdaTest.

Шесть важных тезисов для тех, кто хочет стать тестировщиком (или, что нужно знать):

  1. Основы дискретной математики, включая комбинаторику, элементарную теорию графов и логику (а также — знать каким образом эти теоретические знания применяются к разработке ПО).
  2. Вероятностные и аппроксимационные алгоритмы, с базовым анализом сложности.
  3. Реляционные базы данных и /или основные методы искусственного интеллекта.
  4. Стандартные структуры данных и алгоритмы, а также — анализ их сложности.
  5. Основы дискретной и непрерывной оптимизации, иногда преподаваемые в рамках алгоритмов.
  6. NP-полнота и неразрешимость (некоторые проблемы не могут быть решены алгоритмически, а для некоторых вряд ли существуют эффективные алгоритмы).

Кроме того, существует множество инструментов тестирования, которые вы должны попробовать или хотя бы — услышать о них. Расскажем о них далее.

Open-source инструменты тестирования

Инструменты управления тестами

  • TETware.
  • RTH.
  • TET (Test Environment Toolkit).
  • Test Manager.

Инструменты функциональных тестов

  • Selenium.
  • Katalon Studio.
  • Soapui.
  • Imprimatur.
  • 14 WebInject.
  • 3 Watir.
  • WET.
  • HTTP::Recorder .
  • ITP.
  • Solex.
  • WatiN.
  • Swete.
  • Canoo WebTest.
  • SAMIE.
  • Webcorder.

Инструменты нагрузочного тестирования

  • FunkLoad.
  • Jmeter.

Проприетарные и коммерческие инструменты

Инструменты управления тестированием

  • HP Quality Center/ALM.
  • DevTest.
  • QA Complete.
  • QAS.TCS (Test Case Studio).
  • ApTest Manager.
  • T-Plan Professional.
  • TestLog.
  • Automated Test Designer (ATD).
  • SpiraTest.
  • Testuff.
  • Test Manager Adaptors.
  • SMARTS.
  • PractiTest.

Инструменты функционального тестирования

  • QuickTest Pro.
  • Ranorex.
  • Rational Robot.
  • Internet Macros.
  • Sahi.
  • PesterCat.
  • vTest.
  • SoapTest.
  • liSA.
  • Badboy.
  • actiWATE.
  • Test Complete.
  • Squish.
  • QA Wizard.
  • AppsWatch.
  • Netvantage Functional Tester.

Инструменты для нагрузочного тестирования

  • WebLOAD Professional.
  • Load Impact.
  • HP LoadRunner.
  • Forecast.
  • preVue-ASCII.
  • LoadStorm.
  • Webserver Stress Tool.
  • NeoLoad.
  • vPerformer.
  • Loadtracer.
  • ANTS – Advanced .NET Testing System.

Остались вопросы?

Укажите ваши данные, и мы вам перезвоним

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

По данным zarplan.com, средняя зарплата тестировщика в России, составляет 116 тысяч рублей. Медианная зарплата специалиста — 99 тысяч рублей. Указанные значения рассчитаны на основе 323 вакансий, доступных на декабрь 2022 года. Больше всего эти специалисты получают в Москве, Санкт-Петербурге, Самаре, Новосибирске и Саратове.

Уровень зарплат разных тестировщиков

Уровень зарплат разных тестировщиков

В США, по данным Glassdoor.com, общий уровень дохода тестировщика QA составляет 72.977 долларов США в год, а средняя зарплата — 67.254 доллара США в год. Предполагаемая дополнительная оплата труда — 5.723 долларов год. Дополнительное вознаграждение может включать денежную премию, комиссионные, чаевые и другие средства, не входящие в официальную заработную плату.

Средняя зарплата в США — 36 долларов в час

Средняя зарплата в США — 36 долларов в час

Остались вопросы?

Укажите ваши данные, и мы вам перезвоним

Где искать заказы тестировщику 

Для поиска работы вы можете использовать агрегаторы вакансий (hh.ru, rabota.ru, superjob.ru). Но также существуют и специализированные площадки, где велик шанс встретить вакансии именно тестировщику. Вот эти площадки:

  •  «Хабр Карьера».
  • Вакансии на vc.ru.
  • Geekjob.
  • Вакансии для IT-специалистов.

Пример вакансии QA инженер на «Хабр Карьере»

Пример вакансии QA инженер на «Хабр Карьере»

Сайты, где можно найти вакансии QA и QC от иностранных компаний:

  • relocate.me.
  • indeed.com.
  • Hired.
  • idealist.org.
  • Jora.
  • Glassdoor.
  • AngelList.

Два крутых Telegram-канала и один чат специально для QA и QC:

  • https://t.me/forallqa 
  • https://t.me/qa_jobs 
  • https://t.me/qa_ru 

И более универсальные каналы с IT-вакансиями, в которых компании ищут и тестировщиков:

  • https://t.me/careerspace 
  • https://t.me/alenavladimirskaya 
  • https://t.me/myjobit 
  • https://t.me/Solvery 
  • https://t.me/jobGeeks 
  • https://t.me/budujobs 
  • https://t.me/djinni_jobs_bot 
  • https://t.me/jobforjunior 
  • https://t.me/Remoteit 
  • https://t.me/distantsiya 
  • https://t.me/jobskolkovo 
  • https://t.me/yojob 

Также существуют два сообщества с вакансиями VK:

  • https://vk.com/it_rabota_itwork 
  • https://vk.com/talentedpeoples

qa_jobs – один из лучших каналов в TG с вакансиями для QA и QC

qa_jobs – один из лучших каналов в TG с вакансиями для QA и QC

Остались вопросы?

Укажите ваши данные, и мы вам перезвоним

Где учиться профессии тестировщик с нуля 

Стать тестировщиком можно несколькими способами:

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

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

Вернемся к ВУЗам. Вот 8 институтов, где вы можете найти программу обучения близкую профессии тестировщика или получить профессию «Тестировщик, QA-инженер» после окончания:

  1. МФТИ.
  2. ДВФУ.
  3. НИТУ МИСиС.
  4. МГЛУ.
  5. ФУ (Финуниверситет).
  6. НИУ ВШЭ.
  7. МГУ им. М. В. Ломоносова.
  8. РЭУ им. Г. В. Плеханова.

Как стать Software Tester 

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

Если вы хотите стать инженером по тестированию ПО без диплома в разработке или смежной области, курсы и буткемпы — ваш шанс. 

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

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

Как стать Quality Assurance

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

Пример программы курсов на обучение QA в одной из онлайн-школ

Пример программы курсов на обучение QA в одной из онлайн-школ

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

  1. Проверкой методов, используемых в производственных процессах.
  2. Документированием процедур и действий.
  3. Проведением аудитов.
  4. Созданием контрольных списков и стандартов процессов.

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

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

Другие навыки, которые вам понадобятся как специалисту: аналитические способности, стремление к продуктивности, тяга к организованности, внимание к деталям и, конечно, логическое мышление.

Остались вопросы?

Укажите ваши данные, и мы вам перезвоним

Как подготовиться к собеседованию

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

  • Распространенные языки программирования, такие как Java, C#, HTML и Python.
  • Опыт работы с инструментами управления тестированием.
  • Навыки решения проблем.
  • Опыт работы с инструментами автоматизации.
  • Знание баз данных и SQL.

Наиболее известные инструменты для автоматизации и отслеживания ошибок: Appium, Bamboo, GitLab, Bitbucket, qTest, Zephyr, PractiTest и Test Collab. Нет необходимости осваивать их все, но вы должны быть знакомы с одним или двумя из них. Вы можете изучить указанное ПО самостоятельно или пройти онлайн-курсы, чтобы подготовиться к работе с программой.

Настраиваем базовый сервер в Appium

Настраиваем базовый сервер в Appium

Что посмотреть, чтобы понять профессию

Напоследок — крутые видео, которые помогут понять профессию тестировщика с основ до профессионала.

What is Quality Assurance? Наглядная анимация, которая расскажет об основах QA и роли Quality Assistance в процессе разработки программного продукта.

Software Testing Explained: How QA is Done Today Вы узнаете о наиболее динамично развивающихся отраслях тестирования в мире, а также об истории QA.

Quality Assurance | What is Quality Assurance? | Quality Control | PMP Training | Invensis Learning. Вы узнаете, что такое обеспечение качества и как работают разные методологии обеспечения качества. Затем – о некоторых лучших практиках обеспечения качества. Наконец, в конце занятия будет рассказано о тестах, используемых в различных отраслях промышленности.

What Is a Quality Assurance Engineer? | Should You Become One? | Ask a Dev. Действующий разработчик расскажет о том, что такое QA и стоит ли становиться таким специалистом в 2023 году.

What Does a QA Engineer Actually Do? Видео сосредоточено на работе QA-инженера. Вы увидите, как выглядит повседневная работа QA-инженера и как вы можете стать одним из них.

Quality Assurance in Agile Software. Дэйв Фарли исследует роль QA в современных agile-командах и подробно рассматривает карьерный рост от джуна до синьора. 

https://www.youtube.com/watch?v—4kkvkOAFPI0. Семиминутное видео, которое объяснит, как стать QA Engineer.

Остались вопросы?

Укажите ваши данные, и мы вам перезвоним

Любой продукт, будь то сайт или мобильное приложение, проходит проверку на качество. В ИТ-сфере за этим следит тестировщик (Test Engineer).

В переводе с английского глагол «test» означает «проверять». Поэтому тестировать, проверять программное обеспечение с целью обнаружения ошибок (багов) в работе ПО и их исправления – вот главная задача такого специалиста.

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

Место в структуре компании

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

Первоначально сотрудник становится младшим специалистом по тестированию (Junior QA Engineer/Tester). Эту позицию занимают сотрудники с малым опытом работы или без него. О последующих градациях должностей тестировщиков вы можете прочитать в нашей статье Карьера тестировщика: от джуниора к лиду.

Тестировщик в компании

Требования к тестировщикам

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

У специалистов по тестированию есть негласный девиз: «Если вам кажется, что ПО идеально, значит, его плохо продиагностировали». На программный продукт нужно смотреть, «надев очки перфекциониста», постоянно задавать себе вопросы:

  • Что не работает?
  • Что работает?
  • А что работает не так, как задумывалось?

Бытует мнение, что данная профессия монотонна и не требует креативности соискателя. Это не совсем так: вакансию предложат только тем кандидатам, которые смогут проявить смекалку и творчески подойдут к решению проблемы.

Обязанности тестировщика

Давайте коротко рассмотрим главные должностные обязанности тестировщика.

Контроль и поиск проблем

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

Тестирование

Следующий этап – это разработка тестовых наборов и их регулярный прогон, подготовка тестовых данных, написание методики тестирования.

Анализ

Данные, полученные в процессе проверок, анализируются. Обнаруженные недочеты классифицируются и заносятся в базу.

Саппорт

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

Документирование дефектов

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

Документирование дефектов

Дополнительные пункты

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

  • Понимание, организация и проведение разных уровней тестирования (от модульного до приемочного).
  • Знание языков программирования, на которых ведется разработка продукта (JavaScript, Java, Python, PHP, C#, C++ и т.д.).
  • Умение работать с системами отслеживания ошибок (bug tracking systems).
  • Иметь навыки работы со средствами автоматического тестирования (каким, например, является Selenium для Java).
  • Коммуникация с клиентами, разработчиками, аналитиками, другими тестировщиками.
  • Знание иностранного языка (обычно английского) на уровне, позволяющем читать и заполнять техническую документацию.

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

Ответственность за результат

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

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

Выводы

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

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

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

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

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

Что должен уметь тестировщик?

Что должен уметь тестировщик? Это зависит от его уровня (Trainee, Junior, Middle, Senior) и опыта. Базовыми навыками являются:

  • Основы тестирования;
  • Классификация тестирования, инструменты и методы;
  • Умение создавать сценарии тестирования.

SDET и тест-разработчики обязаны владеть программированием, иметь глубокие знания протокола HTTP, работать с базами данных, HTML, CSS. Кроме того, важным для продвинутого тестировщика является работа с командной строкой, инструментами автоматического тестирования (HP-UFT, Selenium и т.д.).

Soft-skills или личностные качества тестировщика играют не менее важную роль, к ним относят:

  • Умение работать над собственными ошибками;
  • Трудолюбие;
  • Энтузиазм;
  • Терпеливость;
  • Коммуникабельность;
  • Смекалка и прочее.

Что делает тестировщик?

Чем занимается тестировщик? Рабочий день тестировщика простыми словами выглядит следующим образом:

  • Общение с работодателем, определение рабочих задач (составление чек-листа);
  • Тестирование ПО/сайта/мобильного приложения/игры, выявление багов, выполнение тест-кейсов, составление отчета и его отправка разработчику/аналитику;
  • Анализ выполненной работы, оценка ошибок и их коррекция.

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

Что такое чек-лист тестировщика?

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

Существуют универсальные и специальные чек-листы. Они представлены в виде таблицы (обычно, из двух столбцов). В одном столбце указывается задача, в другом статус выполнения. Такой простой инструмент позволяет:

  • Улучшить видимость всей системы
  • Определить объем предстоящей работы
  • Не запутаться в хронологии тестирования.

Кроме чек-листа существуют понятия “план тестирования” и “тестовый сценарий”, которые также учитывает специалист.

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

Итак, что делает тестировщик, какие задачи перед ним ставит работодатель?

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

Также можем выделить 3 базовые задачи QA:

  • Изучение тестовой документации, оценка объемов и нюансов работы;
  • Выполнение тест-кейсов (для тест-разработчика – разработка тест-кейсов);
  • Анализ тестирования, фиксация ошибок, составление отчета.

Чем занимается тестировщик помимо этого? Зависит от его уровня, особенностей компании и должности. Сюда также может входит менеджмент, углубленный анализ системы, работа со сложным ПО и т.д.

Обязанности тестировщика в иностранной IT-компании

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

Подтверждением профессиональных знаний тестировщика является сертификация:

  • ISTQB/ASTQB – базовый уровень – состоит также из промежуточных сертификатов;
  • CSTE, SDET и другие – продвинутый уровень.

Роль тестировщика в IT-команде

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

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

Хотели бы узнать больше, что делает тестировщик, какие задачи перед ним ставят в современной IT-компании? Получите подробную консультацию специалиста Test Pro, заполнив форму Apply.

Часто задаваемые вопросы

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

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

В блоке “Навыки” стоит указать следующие категории: языки программирования, Database, UI Automation, Repository, другие навыки (HTTP, XML и т.п.). Лучше писать лаконично, без лишней информации.

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

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




  • 9 декабря, 2022




  • 4:06 дп



  • No Comments

Оставьте комментарий

Понравилась статья? Поделить с друзьями:

Другие крутые статьи на нашем сайте:

0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии