Если вы знаете язык программирования, вы можете стать разработчиком и писать код. Если знаете математику, можете стать дата-сайентистом и извлекать знания из биг-даты. Если разбираетесь в людях, бизнесе и технологиях, можно стать продактом и рулить продуктом в целом.
А кто такой инженер по тестированию? Говорят, что это хороший трамплин в ИТ. Разберёмся.
На микроволновках
Допустим, в компании решили создать бытовую микроволновку.
Продакт-менеджер:
Коллеги, нам нужно устройство, в котором люди смогут разогревать блюда, но без нагревательного элемента. Чтобы работала быстро. Размер такой-то. Нужна дверца. Обязательно таймер.
Разработчик:
Для этого подходят микроволны. Потребуется сделать вращающуюся платформу и фарадееву клетку.
Продакт:
Ничего не понял, делайте.
Инженер по тестированию:
Постойте!
Инженер по тестированию:
От какого напряжения будет работать? Какая будет защита от перепадов? А если включить в розетку вдвое менее мощную? Что там можно будет греть, а что нельзя? Что если включить с открытой дверцей? Что будет, если греть воду? Что если греть камень?
КУСАЮТСЯ ЛИ МЕЧЕХВОСТЫ?! ЧТО ЭТО ВООБЩЕ?! / Койот Питерсон на русском
А сталь? А кота? А динамит? А если поджечь фитиль? А если туда ничего не положить и включить?
Все крепко думают.
Это и есть работа тестировщика: убедиться, что продукт работает нормально в штатных и внештатных ситуациях. По-умному будет так: «Насколько реальное поведение продукта совпадает с ожидаемым и как это отразится на опыте пользователя?»
Какие бывают
В ИТ-среде в связи с тестированием и качеством принято три обозначения:
QA — quality assurance, самый главный по качеству;
QC — quality control, контролёр качества;
В разных компаниях эти обозначения могут сливаться или дополнительно разделяться, но в целом картинка такая.
QA — это тот, кто думает о качестве продукта в целом, причём не только о конечном коде, но и всего процесса разработки. Например:
Как понять пользовательские сценарии, в которых вероятнее всего возникнут ошибки? Как их собрать? Как систематизировать? Как ничего не упустить? (Например, как понять, какие именно предметы люди могут догадаться засунуть в микроволновку, и как защититься от идиотов, которые засунут туда динамит?)
Как соединить запросы людей, требования бизнеса и реальные возможности продукта с точки зрения качества? Что если наш продукт совсем не делает то, чего пользователи могут ожидать? Например, если они будут сушить в микроволновке кошку — это чья проблема? Будем ли мы с этим что-то делать?
Кто, как и в каком порядке будет исправлять ошибки? Как мы будем повторно тестировать места с ошибками?
Что и как тестировать от версии к версии программы, чтобы это было достаточно быстро, но не в ущерб качеству?
Можно представить, что QA — это директор по качеству, главный человек на пути у багов. Он не менее важен, чем главный архитектор или ИТ-директор. Многие его функции могут пересекаться с функциями других ИТ-директоров.
УКУСЫ ПИЯВОК (Лечебные пиявки едят заживо) Койот Питерсон на русском
QC — это тот, кто сфокусирован на тестировании самого продукта:
Что именно тестируем? Какие функции, кнопки, состояния, сценарии?
Какие результаты тестирования нам нужны? Какие исходы правильные, а какие — ошибки?
Как автоматизируем тесты? Что нужно обязательно пройти ручками?
Как синхронизировать работу нескольких тестировщиков? Как распределить задачи, области, слои?
Можно представить, что это такой главный бригадир тестировщиков. Его работа — чтобы тесты шли ровно и чётко, без проблем. Разумеется, очень полезно, если он умеет непосредственно тестировать.
Тестировщик — это тот, кто тестирует продукт: проходит его ручками или пишет автоматические тесты; описывает баги; общается с разработчиком по поводу этих багов; заново тестирует исправленное.
Зачем столько тестировщиков
Когда продукт маленький, функция тестировщика может лежать на самом разработчике: сам написал код, сам проверил работу. Никакие QA и QC в маленьком продукте не нужны — там всё решается быстро и компактно.
Но продукты имеют свойство расти: сначала там один разработчик, потом трое. Каждый протестировал свою часть продукта, а кто протестирует продукт в целом и проверит «стыки»? Нужен тестировщик. Продукт продолжает расти, и вот уже у нас не один тестировщик, а пятеро: как сделать так, чтобы они не тестировали одно и то же? Или тестировали, но по правильной методике?
Значит, им нужен бригадир — QC.
Не успели оглянуться — и вы уже делаете массовый веб-сервис, у вас несколько сотен тысяч клиентов, а сам сервис состоит из десятков модулей. И часть модулей делают в Москве, другую часть — в Санкт-Петербурге, третью — в Екатеринбурге. У каждого офиса своя атмосфера, куча собственных нюансов и проблем. И вот это всё нужно «причесать», чтобы внутри и на стыках этих модулей не было багов. Над этим работают десятки тестировщиков, несколько QC и один большой важный QA, который управляет тестированием.
Что делает тестировщик
Тестировщику дают продукт и требования к нему (документацию). Он всё это изучает и сопоставляет. Придумывает, как это всё тестировать. Его задача — проверить, чтобы продукт исполнял возложенные на него обязанности по документации, а потом — проверить всякие нештатные ситуации и предложить улучшения.
Само тестирование происходит по множеству разных сценариев. Например, так:
Тестировщик открывает продукт как пользователь и проходит все стандартные сценарии — как будет происходить у 80% всех людей. Все баги фиксирует.
Потом он может пройти кромешные варианты — например, если у человека очень длинное имя или трёхзначный возраст. Например, если у вас интернет-магазин, то что будет, если в нём закажет товар Его Пресвятое Величество Константин Константинович «Навуходоносор II» Константинопольский?
Можно попробовать взломать продукт: вместо имени ввести код; добавить в корзину бесконечное количество товаров; добавить в корзину −1 (минус один) товар; добавить в корзину больше 40 тысяч товаров (и перегрузить переменную счётчика товаров); поискать в строке поиска «Войну и мир» (полный текст).
Можно представить, что у пользователя дефектное устройство: например, ввод происходит бесконечно быстро или вместо русских букв в поле ввода вставляются картинки. Как тогда поведёт себя программа? Все находки фиксируются в багтрекере.
Какие-то из этих тестов можно автоматизировать: пишется специальная программа, которая симулирует действия пользователя и сравнивает результаты с эталоном. Другие тесты обязательно проходятся ручками.
Отдельная кухня — это то, как тестировщик фиксирует баги и доносит их до разработчика. Ведь одно дело сказать «Я нашёл ошибку», и совсем другое — сделать так, чтобы разработчик тоже смог её найти и исправить. Поэтому хороших тестировщиков учат грамотно описывать баги.
В некоторых компаниях тестировщик предлагает улучшения продукта с точки зрения логики, интерфейса или текста. Раз человек пользуется продуктом много и часто, есть смысл его послушать.
Почему говорят, что это трамплин в профессию
С одной стороны, стать тестировщиком проще, чем программистом: не нужно знать языки программирования и математику. Программирование и понимание алгоритмов потребуется только для автотестов, и это не так сложно, как обычная продуктовая разработка.
С другой стороны, тестировщики очень важны: ни одна уважающая себя компания не будет запускать продукт без внимательного тестирования. Везде, где есть разработчики, будут и тестировщики.
Так как профессия довольно молодая, спрос на специалистов есть, и найти работу реально.
Где учиться
На тестировщиков постепенно начинают учить везде, где учат на разработчиков. В Практикуме тоже: посмотрите наш бесплатный тренажёр для тестировщиков и приходите осваивать новую профессию — с наставниками и чёткой системой роста это легко и приятно. Мы обучаем ребят до уровня QC: то есть помогаем научиться самому тестированию и организации работы тестировщика. До уровня QA люди уже доходят самостоятельно.
Курсы по программированию с нуля
Приходите к нам в ИТ. У нас есть удаленная работа, высокие зарплаты и удобное обучение в «Яндекс Практикуме». Старт бесплатно.
Получите ИТ-профессию
В «Яндекс Практикуме» можно стать разработчиком, тестировщиком, аналитиком и менеджером цифровых продуктов. Первая часть обучения всегда бесплатная, чтобы попробовать и найти то, что вам по душе. Дальше — программы трудоустройства.
Еще по теме
Кто такой дата-сайентист
Если вы не знаете, чем заняться ближайшие 15 лет, — идите в дата-сайенс, помогите нейросетям захватить мир.
Как стать богатым программистом
Четыре стратегии повышения дохода, если ты владеешь хотя бы одним языком программирования.
Как стать контент-менеджером (и зачем)
Bluetooth: как работает и зачем нужен
Чтобы подключать наушники и другие устройства
Как подготовить резюме для крупной компании?
Инструкция новичкам от разработчика из Яндекс.Практикума.
Что такое кэш и зачем его чистить
Это старые данные, которые уже могут быть неактуальны
Что такое jupyter-ноутбук и зачем он нужен
Рассказываем о необычной среде разработки
Что такое микросервисы
Разбиваем программу на сотни частей.
Давид Ян о системе, которая предскажет ваше увольнение
Большой разговор в подкасте «Запуск завтра».
Источник: thecode.media
Профессия «Тестировщик приложений»
Чтобы заниматься тестированием, вам не нужны техническое образование и опыт в программировании. Главное — интересоваться сферой IT, быть усидчивым и внимательным к мелочам и хотеть развиваться в этом направлении. В статье расскажем, чем занимаются и сколько зарабатывают тестировщики приложений, какими навыками и чертами характера нужно обладать для работы. Информация будет полезна тем, кто хочет начать работать в IT.
Содержание статьи скрыть
Кто такой тестировщик приложений и чем он занимается
Тестировщик проверяет, как приложение работает на разных устройствах и в разных операционных системах. Он проходит по всем кнопкам и ссылкам, заполняет формы, создаёт сценарии тестирования, прогнозирует сбои и ищет несоответствия между полученным и ожидаемым результатом.
Если заказчик хочет видеть конкретную иконку на странице — это ожидаемый результат. То, как всё реализовано в продукте, — фактический. Если они отличаются, это считается ошибкой, которую и должен обнаружить тестировщик
Чем занимаются тестировщики приложений:
- Разрабатывают тестовую документацию — чек-лист или тест-кейс, на основании которого будут осуществляться проверки.
- Проводят тесты — на основании тестовой документации проверяют, всё ли в порядке. Если фактический и ожидаемый результаты отличаются, оформляют баг-репорты.
- Оформляют баг-репорты или отчёты о дефекте — это те материалы, которые передаются разработчикам, чтобы они исправили имеющиеся ошибки.
- Проверяют, что ошибки исправлены — когда разработчики закончат исправления, тестировщики снова проводят тесты, чтобы удостовериться, что баг был исправлен.
Тестировщик отвечает за качество готового продукта, должен найти в нём все возможные дефекты и ошибки, собрать их в единый отчёт и передать разработкам для исправления.
Ежедневные советы от диджитал-наставника Checkroi прямо в твоем телеграме!
Подписывайся на канал
Подписаться
Востребованность профессии «тестировщик»
Тестировщики мобильных приложений обычно работают в компаниях, которые развивают собственный продукт. О том, насколько они востребованы, говорят данные с сайтов по поиску работы — в июле 2021 г. на сайте HeadHunter было 3000 вакансий тестировщиков приложений.
Иногда тестировщиков делят на мануальщиков и автотестеров. Первые проводят ручное тестирование по тест-планам. Вторые пишут программы для проведения автоматических тестирований. Большим спросом пользуются универсальные специалисты, которые владеют современными методами тестирования, знают языки программирования, умеют составлять и автоматизировать тесты.
Стандартные требования и обязанности в вакансии тестировщика
График и формат работы тестировщиков
Тестировщики приложений работают в офисе, на удалёнке или на фрилансе. Также встречается вариант проектной работы, когда они числятся в штате одной студии, но решают продуктовые задачи других компаний — это формат аутстаффинга.
Популярность разных форматов работы:
- офис — чаще всего: 60%, 1968 вакансий на hh.ru;
- удалёнка — средне: 30%, 1032 вакансий на hh.ru;
- проектная работа — редко: 10%.
Но сегодня большинство компаний не настаивают только на офисе или только на удалёнке. Они предлагают частичную занятость, когда сотрудник несколько дней в неделю работает в офисе, а остальное время — из дома.
Зарплата тестировщиков
Средняя заработная плата в регионах — 55-60 000 руб. в месяц, в Москве — около 100 000 руб. в месяц. Минимальная ставка по России — 40 000 руб. в месяц. Специалисты с опытом от трёх лет могут рассчитывать на оклад больше 200 000 руб.
На размер зарплаты влияет:
- регион проживания;
- должностные обязанности и зона ответственности;
- тип занятости и график.
Зарплаты тестировщиков в зависимости от опыта:
Начинающие специалисты с опытом до 1 года
Опытные специалисты с опытом 1-3 года
Профессионалы с опытом работы более 3 лет
Зарплата тестировщика с опытом работы 1-3 года
Плюсы и минусы профессии тестировщика
Раскроем сильные и слабые стороны профессии.
Плюсы работы тестировщиком приложений :
- Можно начать без опыта . Компании охотно берут на работу новичков-джуниоров — тех, у кого нет опыта работы или он меньше 6 месяцев. Только на hh.ru размещено больше 200 вакансий подобных вакансий.
- Востребованность . Спрос на тестировщиков не исчезнет до тех пор, пока развивается IT-сфера, интернет, программы, приложения и др.
- Свобода . Работая тестировщиком, вы не привязаны к офису. Можете трудиться из дома на удалёнке, а можете быть фрилансером, который берёт только интересные проекты.
- Перспективы . Приходя в профессию новичком, через 2-3 года вы можете вырасти до специалиста с опытом-мидла и решать более сложные задачи, создаёт стратегии тестирования и контролирует работу команды.
Профессия тестировщика даёт возможность «видеть продукт» с разных сторон. Вы анализируете все функциональные возможности приложения, смотрите на него с позиции инженера и потребителя. Это полезно, если планируете уйти в разработку или стать менеджером продукта.
- Сложности в общении с командой. Разработчики создают приложение, а тестировщики ищут в нём баги. Иногда члены команды считают, что именно тестировщики задерживают выпуск релизов.
- Рутинная работа . Если вы начинающий специалист без опыта, вам не доверят сложные задачи. Первое время вы будете проводить тестирования вручную по заданным тест-кейсам. Но по мере освоения новых навыков, зона ответственности будет расти, а вы — получать более интересные задания.
- Ответственность . От тестировщика зависит качество продукта. Если он не заметит какую-то ошибку, проблема отразится на работе всего продукта.
Идти ли в тестировщики зависит от того, насколько вам близки плюсы профессии и готовы ли вы мириться с её минусами. Но при должной организации работы большинство недостатков сводится на нет.
Необходимые навыки для тестировщика
Чтобы стать тестировщиком, вам не нужно техническое образование. Главное — интерес к сфере IT и быстрая обучаемость. Приходят в профессию и достигают в ней высот люди разных специальностей: технических, гуманитарных, творческих.
Отсутствие диплома о высшем образовании не помешает заниматься тестированием, но, чтобы успешно работать и развиваться в профессии, вам нужно:
- Знать операционную систему на уровне продвинутого пользователя . Недостаточно просто работать в ворде. Необходимо понимать, что такое web-технологии и мобильные приложения и уметь писать простые команды.
- Владеть английским языком . Большинство работодателей в России и странах СНГ ориентированы на западные технологии, поэтому заказчики англоговорящие. Документация и коммуникации внутри компании, обучающие материалы и ПО обычно на английском языке. Поэтому нужно иметь уровень от Intermediate.
- Владеть инструментами ручного и автоматического тестирования . Важно разбираться в системах создания тест-кейсов, файловыми менеджерами, xml-редакторами, генераторами тестовых данных и др.
- Знать языки программирования . Основные — Python и SQL. Это нужно, чтобы писать команды и работать с базами данных.
- Знать системы управления и контроля . Основные — Git и CVS. Они помогут хранить большее количество разных версий кода, возвращаться к работающей версии приложения, разрабатывать новые функции и отслеживать, какие изменения в проект внёс разработчик.
Личностные характеристики тестировщика
Помимо технических навыков или хард-скилов, в тестировании и личностные характеристики специалистов — софт-скилы.
Вот какими качествами должен обладать тестировщик:
- Внимательность и усидчивость . Тестировщик обязан терпеливо искать ошибки и дефекты, быть дотошным.
- Критическое мышление . Тестировщик постоянно обрабатывает и анализирует информацию.
- Обучаемость . Чтобы оставаться востребованным и продвигаться по карьерной лестнице, тестировщик осваивает новые методики тестирования.
- Ответственность . Тестировщик отвечает за качество готового продукта и стремится улучшить качество разрабатываемого приложения.
- Умение чётко формулировать мысли . Найдя ошибку, тестировщик должен объяснить, как и при каких условиях она возникает, чтобы разработчики её исправили.
Поскольку профессия предполагает постоянное общение с командой, она больше подойдёт экстравертам. Тестировщик постоянно взаимодействует с разработчиками, бизнес-аналитиками, заказчиками. Он должен быть коммуникабельным и уметь находить общий язык с разными людьми.
Как стать тестировщиком приложений
Самостоятельное обучение. Вы можете устроиться на позицию новичка-джуниора, самостоятельно изучив методики тестирования по книгам, видео, а также материалам, которые есть в свободном доступе. Такой вариант рабочий, но слишком долгий. Вы получаете информацию не структурировано, часто одни источники противоречат другим.
В результате в голове образуется «каша», и требуется время, чтобы разложить всё по полочкам. Минимальный срок обучения — 1,5—2 года.
Профессиональное обучение. Онлайн-курсы помогут в короткие сроки освоить необходимые для работы техники и инструменты, получить реальный практический опыт. Кроме того, многие онлайн-школы помогают своим выпускникам с трудоустройством, рекомендуя их работодателям. Минимальный срок входа в профессию — 6 месяцев.
Освойте профессию тестировщика за полгода на курсе «Тестировщик» от Нетологии . Вы с нуля освоите ручное и автоматизированное тестирование приложений и отработаете навыки на практике. Вы соберёте портфолио на сервисе GitHub и проведёте автоматизированное тестирование крупного веб-сервиса, а школа поможет с трудоустройством
Как и куда развиваться в профессии
Есть два варианта развития в профессии — по вертикали и по горизонтали. Развитие по вертикали выглядит так:
- Новичок-джуниор. Вы приходите в компанию младшим специалистом, тестируете приложения вручную по готовым тест-кейсам, передаёте результаты проверок вышестоящему руководителю. На позиции джуниора вы будете ежедневно решать одни и те же задачи. Если хотите большего, нужно углублять знания языка кода и автоматического тестирования. Это позволит за 2-3 года дорасти до уровня мидл.
- Специалист с опытом-мидл. На позиции мидла вы самостоятельно составляете тесты и заполняете тестовую документацию. Если справляетесь с обязанностями, через 1,5-2 года станете старшим специалистом-синьором.
- Старший специалист-синьор . Круг рабочих задач синьора шире. На этой позиции вам придётся проводить тесты, планировать работу по тестированию и контролировать работу младших специалистов.
- Руководитель команды-тимлид. Следующая ступень — тимлид или руководитель команды тестировщиков. Обычно путь до неё занимает около 5 лет. Из дополнительных скилов — навыки менеджмента, так как вы организовываете работу других людей.
Если вертикальный рост неинтересен, вы можете развиваться внутри профессии, меняя специализации. Из тестировщика приложений превратиться в:
- Security-тестировщика — оценивать безопасность программы.
- Usability-тестировщика — тестировать, насколько удобно работать с ней.
- Performance-тестировщика — проверять, как она ведёт себя при увеличении нагрузки.
Чтобы развиваться в тестировании, важно быть коммуникабельным, общаться с менеджерами и другими людьми, отвечающими за ваше развитие в компании. Нужно рассказывать, что не нравится и в каком направлении хотите расти. Многие компании заинтересованы в развитии своих сотрудников, поэтому предоставляют внутреннее обучение.
Коротко о главном
- Тестировщик приложений — востребованная IT-профессия, доступная большинству. Несмотря на низкий порог входа и высокую конкуренцию, на рынке есть дефицит кадров — эффективного специалиста найти сложно.
- Чтобы построить успешную карьеру, нужно много и упорно работать. Первое время придётся решать однотипные задачи, но, осваивая новые инструменты и совершенствуя технические навыки.
- Трудозатраты на обучение окупаются уже в первые месяцы работы. Даже на позиции новичка вы будете зарабатывать от 40 000 руб. и выше.
Если хотите овладеть необходимыми навыками и работать тестировщиком, воспользуйтесь нашим топом курсов . Здесь собраны лучшие программы, которые помогут быстрее войти в профессию и начать зарабатывать
Поделитесь материалом в соцсетях — обсудите его с друзьями и коллегами!
Не знаете с чего начать?
Получите персональный список курсов, пройдя бесплатный тест по карьере
Источник: checkroi.ru
Тестировщик программного обеспечения (ПО)
Тестировщик ПО (Software Tester, Software Testing Engineer) занимается проверкой работоспособности программного обеспечения. Профессия с явным техническим уклоном, она понравится абитуриентам, без труда сдавшим ЕГЭ по информатике и математике. Кстати, недавно центр профориентации ПрофГид разработал точный тест на профориентацию, который сам расскажет, какие профессии вам подходят, даст заключение о вашем типе личности и интеллекте. Профессия подходит тем, кого интересует информатика (см. выбор профессии по интересу к школьным предметам).
Краткое описание
Тестировщики программного обеспечения – одни из самых востребованных специалистов в IT-индустрии. Они оценивают программное обеспечение с точки зрения экспертов и обычных пользователей, главная цель их деятельности – выявление и устранение ошибок ПО. Тестировщики проверяют, соответствует ли разрабатываемое приложение определенным требованиям, продумывают и тестируют различные сценарии использования, локализуют дефекты и коммуницируют по поводу их устранения.
У тестировщиков ПО широкие перспективы профессионального роста. Можно развиваться технически и дорасти до уровня Senior или же стать QA Lead. Также всегда могут выбрать другую сферу, которая так или иначе связана с сегментом IT.
Источник: www.profguide.io