Найти тему
Лайв Тайпинг

Что нужно знать, чтобы работать тестировщиком

Оглавление

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

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

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

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

Хороший тестировщик умеет:

  1. Разбираться во всех типах тестирования (модульное, системное, интеграционное, альфа, бета), правильно их применять, настраивать нагрузочное и стресс-испытание Yandex Tank, Apache jMeter.
  2. Составлять профессиональную документацию – тест-кейсы (последовательность проверки функциональности), чек-листы (перечень пошаговых действий), User Story (требования к системе).
  3. Работать в IDE (единой интегрированной среде разработки), использовать наборы компиляторов и эмуляторы (Android Studio, Genymotion, Xcode), инструменты автоматизации Selenium.
  4. Пользоваться десктопным или браузерным багтрекером для построения алгоритма работы, решения задач, контроля ошибок; настраивать YouTrack под свои процессы.
  5. Применять разные техники тест-дизайна – проектировать тесты, составлять диаграммы состояний, тестировать области определения, выполнять анализ граничных значений.
  6. Использовать программы, позволяющие снифферить (перехватывать) и модифицировать трафик, отслеживать данные через Charles, работать с прокси Fiddler, применять Postman для мониторинга, тестировать сайты на разных платформах с помощью browserstack.
  7. Задействовать виртуальные инструменты VirtualBox, развертывать окружение при помощи Vagrant.
  8. Использовать систему контроля версий Git для отслеживания изменений в исходном коде.
  9. Понимать, как взаимодействует связка сервер-клиент, чем отличаются кроссплатформенные приложения от нативных.
  10. Быть опытным пользователем хотя бы одной операционной платформы, разбираться в гайдлайнах мобильных систем (iOS, Android), понимать, почему ПО разных разработчиков во всех системах выглядят единообразно.
  11. Разбираться с ПО, у которого нет поясняющей документации.
  12. Тестировать безопасность мобильных и веб-приложений, использовать сложные инструменты автоматизации реального браузера Selenium WebDriver и программы для обработки ошибок при автоматическом тестировании: Appium, Katalon studio.

Резюмируем: хороший тестировщик в совершенстве знает предмет «Тестирование программного обеспечения» и другие дисциплины из этой области, умеет применять знания на практике и разбираться в программах, которые упрощают жизнь QA-инженеров и QC-тестировщиков (QA – обеспечение качества, QC — контроль качества).

Личные качества тестировщика

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

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

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

Где, чему, как и для чего учиться тестировщику

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

  • Junior – новички выполняют ручное тестирование, находят ошибки, но не участвуют в улучшении качества программ, они могут рассчитывать на доход $500–600.
  • Middle с опытом работы 1–3 года — находят баги, выдвигают идеи по улучшению ПО, зарабатывают $1000–1300.
  • Lead с большим стажем достижений получают $2000–5000.

По данным ресурса TRUD.com, средняя зарплата QA-инженера в 2020 году в России – 100 тыс. руб. в месяц, а QA Lead – 150. Эти цифры не противоречат результатам опроса Software-testing за 2019-ый год, если учитывать, что средний показатель высчитывается с учётом зарплат Москвы и Петербурга.

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

Самостоятельное обучение

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

  • Святослав Куликов, «Тестирование программного обеспечения. Базовый курс»;
  • Гленфорд Майерс, «Искусство тестирования программ»;
  • Борис Бейзер, «Тестирование чёрного ящика»;
  • Роман Савин, «Тестирование dot com»;
  • Рекс Блэк, «Ключевые процессы тестирования»;
  • Элфрид Дастин, «Автоматизированное тестирование программного обеспечения».

Пользу и дополнительные знания принесет чтение статей в блогах Badoo, RadioQA, Яндекс. Много полезной информации вы найдёте на сайте Software-testing на форуме тестировщиков.

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

Компьютерные школы и курсы

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

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

  • Яндекс.Практикум, «Как стать инженером по тестированию» – бесплатный вводный курс из 10 часов, 240 платных часов и помощь в трудоустройстве.
  • Нетология, «Тестировщик» – шестимесячное обучение с трудоустройством (следующий курс стартует уже 14 декабря!).
  • SkillBox, «Профессия тестировщик» – 105 модулей, 586 уроков, бонусом идут курсы «Английский для IT-специалистов» и «Универсальные знания программиста».
  • Школа Ольги Назиной – пять разных курсов от профессионального тестировщика.

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

Стать тестировщиком – возможно

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