С чего начать обучение на тестировщика с нуля самостоятельно
Как стать тестировщиком с нуля
Основы тестирования можно освоить без курсов за 120K. Наш QA-инженер Антон в прошлом работал на стройке и самостоятельно переучился на тестировщика игр за полгода. В статье он расскажет, как нашел бесплатный курс, сколько часов в день тратил на теорию и зачем в перерывах между занятиями рубил дрова.
«Ребята, работаю охранником, мне 40 лет. На кого пойти переучиться?» Этот пост на Пикабу сразу меня зацепил: я мечтал бросить работу на стройке, но не знал, чем зарабатывать дальше. В комментариях увидел ссылку на бесплатный курс по QA. Посмотрел вводный урок о профессии тестировщика и на следующий день уволился.

Составьте план обучения
После увольнения устроил себе долгий-долгий отпуск. Шучу 🙂 Сразу сел за курс и, вдохновленный, решил изучать его по 8 часов в день. Не считал, сколько месяцев буду осваивать основы тестирования, а потом искать работу. Не считал, сколько денег нужно на этот период.
У нас с женой было отложено около 90 тысяч, казалось, нам хватит надолго: машины нет, квартира своя. Ели гречку, макароны, сосиски, хлеб. Из развлечений оставили только прогулки по улице.
Отложенные деньги закончились через 4 месяца, а я еще не открывал сайты с вакансиями. Пришлось переехать к родителям жены: мы не могли даже оплатить коммуналку. Тогда я поставил себе дедлайн — через 2 месяца устроиться в IT-компанию.
Совет: сразу решите, когда закончите учебу и станете искать работу. Рассчитайте, сколько денег нужно на этот период. Не начинайте ничего без финансовой подушки.
Найдите базовый курс для тестировщиков
Я не хотел платить адские деньги за курсы: в интернете есть тысячи бесплатных материалов по основам тестирования. Но в них легко запутаться, особенно когда не знаешь базу. Поэтому я сосредоточился на бесплатном курсе Михаила Портнова «Тестирование программного обеспечения в США», который рекомендовали на Пикабу.
Курс — топ за свои деньги 🙂 Во время уроков Михаил Портнов шарит экран компьютера и показывает, как ищет баги и пишет баг-репорты. Иногда он отвлекается от теории и рассказывает истории из жизни, чтобы мотивировать новичков. В курсе 23 видео по 2 часа, есть проверочные онлайн-тесты и практические задания. Минус — нет обратной связи.

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

Совет: заучивайте лекции, делайте домашки, и тогда любой курс будет работать.
Ограничивайте и сортируйте информацию
К базовому курсу я подключал другие источники. Если в уроке попадался незнакомый термин — какая-нибудь «верификация» или «валидация», — то ставил видео на паузу и шел гуглить. Изучал все статьи подряд. Думал, чем больше прочитаю, тем лучше разберусь, но по факту либо читал одну и ту же информацию в разной подаче, либо углублялся в экспертные дебри, в которых ничего не понимал. В итоге решил смотреть не более двух-трех сайтов по непонятной теме.
Когда серфишь, список закладок растет в геометрической прогрессии. У каждой статьи по десять ссылок на другие статьи, а у тех статей — еще десять. Под конец обучения я боялся открывать свои закладки: там царил неудержимый хаос. Я так и не решился его упорядочить и потерял много классных ресурсов.
Совет: не пытайтесь прочитать весь интернет. Изучайте темы:
— как составлять тест-кейсы,
— как составлять чек-листы,
— что такое классы эквивалентности и как их выделять,
— что такое метод граничных значений,
— как правильно оформить баг,
— какие бывают виды и уровни тестирования,
— что такое клиент-серверная архитектура и как она работает.
Сохраняйте полезную информацию по этим темам в закладки. Сортируйте закладки по папкам.
Занимайтесь краудтестингом
Как только я прошел половину курса, захотел применить свои знания на практике.
Чтобы получать много заказов, нужно много девайсов. У меня был только комп, мой мобильник и мобильник жены. Я поставил виртуальные машины с различными ОС и Android Studio на свою винду. Так набралось 20 девайсов, которые я и указал в профиле. С инвайтами проблем не было.
Проблемы были с оформлением багов. Мне возвращали баг-репорты, потому что неправильно называл баги, описывал их не по ТЗ, прикреплял мало скриншотов. Я переделывал, переделывал и еще раз переделывал. В итоге за несколько месяцев на краудтестинге научился правильно оформлять баг-репорты.
Совет: сосредоточьтесь на качестве баг-репортов, а не на их количестве.
Отдыхайте от учебы (хоть иногда)
Освоением новой профессии я занимался по 11 часов в день: 8 часов на теорию и 3 — на практику. Во время обеда быстро грел еду и сидел с тарелкой за компьютером. Когда голова совсем закипала, позволял себе максимум 5 минут, чтобы встать со стула и пройтись по комнате. Никаких соцсетей, просмотра новостей и видосиков на Ютубе.
Такой экстремальный режим измотал меня: хуже запоминал информацию, быстро уставал. Поэтому решил делать нормальные перемены в течение дня — по 15–20 минут каждые 2 часа. В это время гулял вокруг дома, рубил дрова, помогал с домашней работой. Если не находил проект на краудтестинге, то вечером со спокойной совестью отдыхал.
Совет: устраивайте перемены по 15 минут каждые несколько часов. Полноценно отдыхайте по вечерам.
Смотрите, читайте, слушайте
Сложно учиться 8 часов подряд, даже с небольшими передышками в течение дня. Чтобы голова не закипала, я постоянно переключался между просмотром видео, чтением бумажной книги, изучением сайта и т. д.
Как это выглядело? Когда начинал тупить над видеоуроком, переключался на чтение книги. Когда начинал перечитывать абзац по сто раз, включал подкаст про тестирование и ложился на диван. Когда переставал слышать информацию, открывал форум по тестированию. И так по кругу. Иногда в течение часа менял источники каждые 20 минут.
Совет: переключайтесь между источниками информации, как только начинаете тупить. Заранее составьте список книг, сайтов, подкастов или воспользуйтесь перечнем, который я спрятал под кат в конце статьи.
Ищите вакансии на позицию интерна
Чтобы стать тестировщиком с нуля, я потратил полгода. Первые четыре месяца просто учился, оставшиеся два — учился и искал работу. Искать было тяжело, получил 15 отказов и почти отчаялся, но тут мне попалась вакансия Plarium Krasnodar. Они набирали тестировщиков онлайн-игры без опыта работы на позицию интернов. Интерны — это специалисты начального уровня: компания обучает их, так как видит потенциал.

Теоретические знания и опыт в краудтестинге помогли мне выполнить тестовое задание, а на собеседовании ребята расспрашивали про мое самообразование. Через день позвонила HR и сказала, что меня берут в интернатуру. Первые 3 месяца я обучался под руководством крутого тестировщика, потом сдал финальный тест и стал самостоятельно заводить баги. В этом месте звучат фанфары, и занавес медленно опускается 🙂
Не совет: я не знаю, как закончить статью. Писать что-то из серии «Иди к своей цели» или «Ученье — свет» не хочется. Поэтому беру помощь Хабра. Опытные тестировщики, давайте вместе сделаем статью полезной. Что еще можно почитать/посмотреть новичкам? Какие курсы рекомендуете?
Книги
«Тестирование программного обеспечения. Базовый курс», С. Куликов. Написана простым языком, с юмором.
«Тестирование программного обеспечения», С. Канер, Д. Фолк, Е. К. Нгуен. Книга сложная. Осилят не все.
«Тестирование Дот Ком, или Пособие по жестокому обращению с багами в интернет-стартапах», Р. Савин. Для новичков, без сложных терминов.
«Быстрое тестирование», Р. Калбертсон, К. Браун, Г. Кобб. Книга о том, как тестировать быстро и качественно.
«Кровь, пот и пиксели. Обратная сторона индустрии видеоигр», Дж. Шрейер. Прочитайте, если хотите идти в геймдев.
«Как тестируют в Google», Дж. Уиттакер, Дж. Арбон, Дж. Кароло. Общая информация о работе QA в большой корпорации.
Сайты
Сообщество программистов DOU. Новости, тренды тестирования и IT-индустрии в целом.
Software-Testing.Ru. В разделе «Библиотека» есть подраздел для новичков — «Начинающему тестировщику». Там много мегаполезных статей.
Testbase.ru. Коротко об основах тестирования. Помогает разобраться в терминах.
Группы ВКонтакте
QA тестирование и котики. Вакансии, приколы, практические советы.
Ключ седого тестировщика. Создатели сообщества регулярно отвечают на вопросы новичков.
QA Club. Много видеоконтента о тестировании.
QA NINJAS. Работающий тестировщик делится своим опытом в статьях.
Телеграм-каналы
QA — Курсы и образование. Обсуждение курсов, книг, мастер-классов по тестированию.
QA — Bad Company! Про компании, в которые стоит или не стоит идти тестировщику.
Как стать тестировщиком ПО: пошаговая инструкция
Рассказываем, какие книги читать и какие технологии осваивать, чтобы стать тестировщиком ПО.
Тестировщик ПО (или QA-инженер) — распространенная отправная точка для тех, кто хочет начать карьеру в IT-индустрии, и просто востребованная профессия. Мы расскажем, где новичкам набраться полезных навыков и знаний, а также заработать заветные строчки для резюме и проекты для портфолио.
Чем занимаются QA-инженеры
Тестировщики ПО помогают делать продукты — приложения, сайты, программы, автомобили — такими, чтобы ими можно было пользоваться. Они определяют, какие элементы системы функционируют некорректно или не так удобны, как хотелось бы, находят причины этого — ошибки в коде, дизайне или логике — и отдают на исправление. Все это делается для того, чтобы конечные пользователи получили стабильный, надежный и удобный продукт.
Какие навыки нужны начинающему тестировщику
Поскольку тестирование применимо к самым разным областям, то для работы тестировщику могут понадобиться различные знания. Однако что-то общее есть во всех случаях: нужно, во-первых, знать теорию тестирования, ну а уже дальше — обладать некоторым объемом знаний по тестируемой системе и используемым в ней технологиям.
С теорией все довольно понятно: потенциальный работодатель будет хотеть от вас знаний о том, что такое тестирование, зачем оно нужно в цикле разработки и какое место в ней занимает. Также хорошо бы знать основные методологии разработки (AGILE, SCRUM и прочие страшные слова) — просто для того, чтобы вы могли работать в команде, которая функционирует по определенным правилам. Также неплохо знать, как грамотно написать дефект, что такое тест-кейсы и как их нужно составлять, что такое чек-листы, когда лучше использовать кейсы, а когда проще ограничиться чек-листом.
Если теория тестирования применима ко всем областям, то технические навыки, которые вам понадобятся, зависят от области, в которой вы решили работать. Скажем, если вы хотите заниматься тестированием в области веб-приложений, то очень полезно знать, как работает браузер и из чего состоит веб-страница. И вряд ли это вам пригодится, если вы будете заниматься тестированием бортовых систем самолета.
Впрочем, самые популярные направления разработки сейчас — это именно веб и мобильные платформы. С вебом уже разобрались, а для тестирования мобильных устройств нужно знать особенности построения мобильных приложений, их жизненные циклы и отличия от десктопных приложений, особенности Android и iOS, ну и хорошо бы также ознакомиться с руководствами по дизайну приложений для мобильных устройств от разработчиков обеих систем.
Наконец, практически любая современная программа будет использовать базы данных, так что вам нужно будет узнать, что это такое, и научиться писать простые SQL-запросы.
Нужно ли тестировщику уметь программировать
Вопрос, при выяснении которого сломано немало копий: нужно ли тестировщику уметь программировать. Здесь существуют разные мнения, но все сходятся в том, что умение программировать точно не помешает. На старте оно может и не понадобиться, но будет несомненным плюсом. Навыки программирования могут пригодиться как для понимая того, что происходит в тестируемом приложении, так и для автоматизации каких-то рутинных задач, даже если вы не идете именно в автоматизированное тестирование. Если же вас интересует область автоматизации тестирования, то тут ответ однозначен: вам нужно учить какой-нибудь язык программирования. Если вы уже работаете, то хороший вариант — учить тот язык, на котором в вашей компании ведется разработка. Если еще нет — учите любой из популярных сегодня языков.
Если уж мы говорим про языки, то тестировщику очень полезно знать еще один язык — английский. Хотя бы на уровне чтения документации. Без этого можно работать, но множество материалов сейчас на английском, и его знание может очень помочь.
Как учиться начинающему тестировщику ПО
Учиться лучше так, как удобнее лично вам: по книгам, по статьям, по видеокурсам — или по всему сразу. К счастью, про тестирование очень много материалов в любой форме, так что с поиском информации проблем возникнуть не должно.
Есть множество блогов от известных тестировщиков, есть статьи по тестированию на тематических ресурсах, YouTube полон видеокурсов, в том числе от крупных компаний, есть множество докладов с конференций по тестированию, которые может быть полезно посмотреть. Кстати, на конференциях часто бывают доклады именно для начинающих тестировщиков.
Кроме того, есть образовательные платформы вроде Coursera или Udemy с обучающими курсами, в том числе бесплатными.
Можете начать погружение в тему с книг — приведем четверку самых, на наш взгляд, полезных:
Некоторым из них уже по 20 лет, а написаны они не очень простым языком, но по-прежнему актуальны — особенно как база для начинающих.
Если решите записаться на один из множества платных курсов для начинающих тестировщиков, помните: не все они одинаково полезны, и не всегда в них есть что-то, чего нет в бесплатных.
Пожалуй, основное отличие платных — наличие преподавателя, который сможет ответить на ваши вопросы. Помимо прочего, многие IT-компании открывают собственные школы QA-инженеров и затем принимают самых способных учеников в штат. Обратите на них внимание, если вам хочется попасть к какому-то конкретному работодателю.
Как начать карьеру тестировщика
Когда поймете, что готовы перейти к реальным проектам, выберите какой-нибудь сайт или приложение и попробуйте его протестировать. Подготовьте тест-кейсы, составьте чек-листы для проверки работоспособности, подумайте, как бы вы проследили взаимодействие продукта с его серверной частью — бэкендом.
Первые реальные проекты лучше искать на платформах для краудтестинга. Там компании предлагают всем желающим протестировать их продукт на определенном устройстве и ОС. Скорее всего, работать придется за идею, то есть бесплатно, зато вы наберетесь опыта и посмотрите, как опытные QA-инженеры ведут дефекты.
Неплохой старт для начинающего тестировщика — проект с открытыми исходным кодом и баг-трекером. Это уже не только практика, но и неплохое дополнение к вашему резюме.
Наконец, не забывайте про стажировки в IT-компаниях. На много денег поначалу рассчитывать не стоит, однако если вы проявите себя, есть шанс получить приглашение на работу или рекомендацию для будущих собеседований.
Бета-тестеры и тестировщики ПО
Еще один вариант для старта карьеры — это бета-тестирование. В этом случае вы будете проверять работу программы с точки зрения конечных пользователей. Основная задача бета-тестеров — найти максимальное количество ошибок, а также определить, насколько продукт удобен.
Бета-тестерам не приходится писать скрипты и взаимодействовать с изнанкой программ, так что их работа проще и не требует глубоких знаний, поэтому вы сможете совмещать бета-тестинг с освоением теории. Такая работа развивает мышление тестировщика, учит искать в программе ошибки, позволяет придумывать и проверять неочевидные пользовательские сценарии. Это хорошая практика, которая сделает ваши резюме и портфолио еще привлекательнее.
Крупным IT-компаниям — разработчикам игр, приложений для ПК и мобильных устройств, чьими продуктами пользуются миллионы людей, бывает сложно проработать все пользовательские сценарии. Так что не удивляйтесь: «Лаборатория Касперского» тоже ищет бета-тестеров. Хотите стать одним из них? От вас потребуется только компьютер, который поддерживает актуальную версию антивируса. Желательно установить на него виртуальную машину (например, Hyper-V или VMware), чтобы не превращать в тестовый полигон собственный ПК. Минимальные характеристики для комфортной работы — 4 Гбайт оперативной памяти, а также процессор с двумя, а лучше четырьмя физическими ядрами.
Если хотите попробовать себя в роли тестировщика — пробуйте, это полезная и востребованная профессия, да и порог входа в нее не такой уж высокий. В общем, дерзайте! Ну и смело жмите сюда, если хотите получить опыт бета-тестирования в Kaspersky.
👨🔧️ Обучение на тестировщика: как освоить востребованную профессию в 4 этапа?
Карьера специалиста QA всегда начинается с ручного тестирования, потому что самое простое – поставить себя на место пользователя и имитировать его действия. Специалист проверяет, что программа работает как ожидается при разных сценариях взаимодействия. Для успеха в карьере тестировщика главное – начать, не испугаться трудностей и возможных ошибок.
Предлагаем вашему вниманию состоящий из четырех основных этапов план, позволяющий освоить с нуля востребованную профессию. Остальное, как водится, будет зависеть исключительно от трудолюбия обучающегося.
1. Английский язык
Что освоить?
Английский важен не только как язык, на котором написана почти вся техническая документация. Он также понадобится, чтобы получить первый опыт тестирования на популярных площадках, где можно не уметь ничего: все самые интересные и авторитетные заказы потребуют знания языка международного общения.
Курсы, книги – билингвы, приложения. Важно найти свой эффективный способ. Можно сразу взять книгу по тестированию на английском и переводить по странице в день, прокачивая двойной скилл.
Что в итоге?
В итоге вы умеете разговаривать на английском, бегло читаете и более или менее понятно пишете. Возможно с ошибками, но способны верно передать мысль, пообщаться с заказчиками и разобрать мануал самостоятельно.
2. Основы тестирования
Что освоить?
Ручное тестирование – основа профессии инженера QA. Хотя любой процесс можно автоматизировать, только оно дает понимание качества разработки и состояния функциональности приложения сразу.
Главная цель ручного тестирования – проверка, что все работает без ошибок, и программа выдает ожидаемый результат.
2.1. Определения и основные понятия.
Чтобы в профессиональной среде вам было комфортно, необходимо понимать язык окружающих, поэтому важно сначала разобраться с понятиями и со слэнгом, на котором общаются коллеги.
Некоторые слова могут вызвать вопросы у новичка:
Читайте статьи, общайтесь в коммьюнити, изучайте все незнакомые слова. Поначалу будет трудно, а потом словарный запас расширится и вы начнете понимать собеседников все лучше и лучше.
2.2. Виды тестирования
Возможно эта теория вам никогда не понадобится, и на собеседовании никто не спросит, чем модульное тестирование отличается от тестирования локализации, но разобрать особенности каждой разновидности нужно:
При этом в разных источниках одни и те же виды тестирования могут называться по-разному, а список будет дополнен либо наоборот урезан.
2.3.Цели и этапы тестирования
Каждое тестирование проводится с какой-то определенной целью, а не только для проверки общей работоспособности приложения. В общем случае нужно проверить, что оно правильно работает в любых (или в определенных) обстоятельствах и соответствует заявленным требованиям, а также пользовательским ожиданиям. Это и будут цели тестирования.
Этапы тестирования включают в себя:
Нобходимо составить тест-план – документ, в котором описаны все работы и объекты тестирования, стратегии, а также критерии начала и окончания тестирования.
Тест-план отвечает на следующие вопросы: «что предполагается тестировать?», «что тестируется на самом деле?», «по какому сценарию (как?) вы будете проводить тестирование?»
Существует стандарт IEEE 829, в котором определяется набор документов для использования на каждом этапе тестирования. В целом ознакомиться с жизненным циклом программного обеспечения IEEE и набором стандартов будет полезно для более глубокой работы с ПО.
2.4. Тест-дизайн.
На этом этапе проектируются и создаются тестовые сценарии в соответствии с зафиксированными ранее критериями. Решаются два основных вопроса: «ЧТО тестировать и КАК?»
Определение диапазонов, анализ граничных значений, взаимосвязь причины и следствия – все это входит в данный этап.
Понимая особенности той или иной техники, можно выстраивать тестовый сценарий, комбинируя и получая более широкие и точные результаты.
Прокачать основы тестирования и разобраться в главных понятиях помогут книги:
Что в итоге?
Результатом станет знание основ и теории тестирования, понимание различий видов тестирования и процессов работы с документацией. После прохождения этого этапа стоит попробовать выполнить простые задания на какой-нибудь онлайн-площадке.
3. Технические знания процесса
Что освоить?
Помимо понимания процесса тестирования нужны и базовые знания в IT. Не представляя, как приложение взаимодействует с сервером и средой, невозможно полностью разобрать логику его работы, а значит не получится провести и качественный тест.
Знания доступны в книгах, и хотя какие-то данные в них могут устареть, концепция и логика будут понятны. Потом можно будет использовать актуальные сайты, базы знаний и форумы.
Что в итоге?
При наличии базовых технических знаний вы перестанете паниковать из-за неизвестных ошибок, потому что будете понимать, как их в итоге можно опознать. Чем больше вы изучите, тем больше получите возможностей для трудоустройства и развития.
4. Коммуникативные навыки и поиск работы
Что освоить?
Любой поиск работы предполагает собеседование, а иногда – выполнение тестового задания или решение логической задачи. Специфика работы такова, что инженеру QA приходится общаться с огромным количеством людей. Коммуникативные навыки в этой профессии – одни из ключевых.
Книги – полезный ресурс для расширения горизонтов, но несмотря приведенный ниже список, главный источник навыков – практика общения. Занимайтесь ею. Профессия тестировщика не подходит для мизантропов.
Что в итоге?
Для начала просмотрите указанные в вакансиях требования – это поможет сопоставить запросы работодателей с вашими возможностями. Потом составляйте резюме, но не ограничивайтесь порталами вакансий: пройдите и по сайтам компаний, в которых вам хотелось бы попробовать свои силы.
Никогда не отправляйте резюме с набором стандартных фраз, вроде «Добрый день. Прошу рассмотреть мое резюме» – всегда пишите сопроводительное письмо и каждый раз именно для той компании, в которую его отправляете. Если вы делаете массовую рассылку – это чувствуется, а специально составленное письмо создает ощущение чего-то индивидуального.
Иногда, на собеседовании могут попросить протестировать стул, чашку, ручку или что-то из окружающей обстановки. Это проверка на адекватность и нестандартный подход, поэтому, не нужно придумывать несуществующие характеристики, оцените те, что есть и попробуйте протестировать в текущей обстановке.
Кстати, даже если ваши собеседования неудачно, не огорчайтесь. Каждая неудача дает опыт общения, к тому же вы получаете вопросы, на которые пока не можете ответить. Чтобы этот опыт был полезным, всегда пытайтесь получать от несостоявшегося работодателя обратную связь.
5. Как освоить профессию тестировщика в 1 шаг?
Никак. Не верьте громким заголовкам в рекламе экспресс-курсов. Профессия тестировщика не предполагает одного пути или одних и тех же быстрых шагов. Каждый специалист уникален благодаря индивидуальному опыту, н о если вам нужен четкий план или компания для обучения, выберете курс с объемной программой и достаточным количеством учебных часов на ее освоение:
Кстати, небольшая хитрость, если все же решите изучать азы самостоятельно – все университеты публикуют программы обучения в открытом доступе. Можно выбрать наиболее понравившуюся и использовать ее в процессе самообучения.
Если вы освоили описанный в статье багаж, можете претендовать на начальные позиции в профессии. Тестировщики-джуны выполняют простую работу и много учатся, чтобы перейти на следующий уровень квеста. Для этого обязательно нужно иметь план подготовки, и тогда вы сможете стать мидл-тестировщиком, а то и техлидом в группе QA, но это уже совсем другая история.






