👨🔧️ Обучение на тестировщика: как освоить востребованную профессию в 4 этапа?
Можно ли получить специальность тестировщика самостоятельно? Разбираемся, насколько это сложно и что потребуется желающим изучить все нюансы Quality Assurance с нуля.
Карьера специалиста QA всегда начинается с ручного тестирования, потому что самое простое – поставить себя на место пользователя и имитировать его действия. Специалист проверяет, что программа работает как ожидается при разных сценариях взаимодействия. Для успеха в карьере тестировщика главное – начать, не испугаться трудностей и возможных ошибок.
Предлагаем вашему вниманию состоящий из четырех основных этапов план, позволяющий освоить с нуля востребованную профессию. Остальное, как водится, будет зависеть исключительно от трудолюбия обучающегося.
1. Английский язык
Что освоить?
Английский важен не только как язык, на котором написана почти вся техническая документация. Он также понадобится, чтобы получить первый опыт тестирования на популярных площадках, где можно не уметь ничего: все самые интересные и авторитетные заказы потребуют знания языка международного общения.
Как?
Курсы, книги – билингвы, приложения. Важно найти свой эффективный способ. Можно сразу взять книгу по тестированию на английском и переводить по странице в день, прокачивая двойной скилл.
Что в итоге?
В итоге вы умеете разговаривать на английском, бегло читаете и более или менее понятно пишете. Возможно с ошибками, но способны верно передать мысль, пообщаться с заказчиками и разобрать мануал самостоятельно.
2. Основы тестирования
Что освоить?
Ручное тестирование – основа профессии инженера QA. Хотя любой процесс можно автоматизировать, только оно дает понимание качества разработки и состояния функциональности приложения сразу.
Главная цель ручного тестирования – проверка, что все работает без ошибок, и программа выдает ожидаемый результат.
2.1. Определения и основные понятия.
Чтобы в профессиональной среде вам было комфортно, необходимо понимать язык окружающих, поэтому важно сначала разобраться с понятиями и со слэнгом, на котором общаются коллеги.
Некоторые слова могут вызвать вопросы у новичка:
- Верификация – это процесс оценки системы (возможно не целиком, а только некоторых компонентов), чтобы понять, удовлетворяют ли результаты разработки сформулированным в начале условиям;
- Валидация – оценка соответствия ПО ожиданиям и требованиям пользователя;
- Багрепорт – документ, в котором описана приводящая к ошибке в ходе тестирования ситуация с указанием причин и предполагаемого результата.
Читайте статьи, общайтесь в коммьюнити, изучайте все незнакомые слова. Поначалу будет трудно, а потом словарный запас расширится и вы начнете понимать собеседников все лучше и лучше.
2.2. Виды тестирования
Возможно эта теория вам никогда не понадобится, и на собеседовании никто не спросит, чем модульное тестирование отличается от тестирования локализации, но разобрать особенности каждой разновидности нужно:
- Функциональное тестирование (white box, black box);
- Системное тестирование;
- Тестирование производительности (нагрузочное и стресс-тестирование);
- Регрессионное тестирование;
- Модульное тестирование;
- Тестирование безопасности;
- Тестирование локализации;
- Юзабилити-тестирование.
При этом в разных источниках одни и те же виды тестирования могут называться по-разному, а список будет дополнен либо наоборот урезан.
2.3.Цели и этапы тестирования
Каждое тестирование проводится с какой-то определенной целью, а не только для проверки общей работоспособности приложения. В общем случае нужно проверить, что оно правильно работает в любых (или в определенных) обстоятельствах и соответствует заявленным требованиям, а также пользовательским ожиданиям. Это и будут цели тестирования.
Этапы тестирования включают в себя:
- Анализ ПО, которое предполагается тестировать.
- Изучение требований к продукту и ожиданий пользователей.
- Разработка сценария тестирования и контрольных точек. На данном этапе важно зафиксировать, каким образом будет проведен контроль качества и какие показатели его определяют.
- Разработка тестовой документации.
- Тестирование прототипа (опционально).
- Процесс тестирования.
- Обработка результатов тестирования. Багрепорты.
- Доработка по результатам тестирования.
- Проверочное тестирование.
- Формализация тестирования: багрепорты, отчетность.
Нобходимо составить тест-план – документ, в котором описаны все работы и объекты тестирования, стратегии, а также критерии начала и окончания тестирования.
Тест-план отвечает на следующие вопросы: «что предполагается тестировать?», «что тестируется на самом деле?», «по какому сценарию (как?) вы будете проводить тестирование?»
Существует стандарт IEEE 829, в котором определяется набор документов для использования на каждом этапе тестирования. В целом ознакомиться с жизненным циклом программного обеспечения IEEE и набором стандартов будет полезно для более глубокой работы с ПО.
2.4. Тест-дизайн.
На этом этапе проектируются и создаются тестовые сценарии в соответствии с зафиксированными ранее критериями. Решаются два основных вопроса: «ЧТО тестировать и КАК?»
Определение диапазонов, анализ граничных значений, взаимосвязь причины и следствия – все это входит в данный этап.
Понимая особенности той или иной техники, можно выстраивать тестовый сценарий, комбинируя и получая более широкие и точные результаты.
Как?
Прокачать основы тестирования и разобраться в главных понятиях помогут книги:
- «Тестирование программного обеспечения. Базовый курс», Святослав Куликов;
- «Ключевые процессы тестирования», Рекс Блек;
- «Искусство тестирования программ», Гленфорд Майерс, Том Баджетт, Кори Сандлер;
- «Как тестируют в Google», Арбон Джейсон, Каролло Джефф, Уиттакер Джеймс;
- «Тестирование программного обеспечения. Фундаментальные концепции менеджмента бизнес-приложений», Сэм Канер, Джек Фолк, Енг Кек Нгуен;
- «Книга для начинающих тестировщиков», Ольга Назина;
- «Гибкое тестирование», Лиза Криспин, Джанет Грегори;
- «Тестирование программного обеспечения», Рон Паттон;
- "Lessons Learned in Software Testing", Cem Kaner, James Bach, Bret Pettichord;
- "How to break web software", Mike Andrews, James A. Whittaker;
- "How to Break Software Security", James A. Whittaker;
- "Perfect Software and other illusions about testing", Gerald M. Weinberg.
Что в итоге?
Результатом станет знание основ и теории тестирования, понимание различий видов тестирования и процессов работы с документацией. После прохождения этого этапа стоит попробовать выполнить простые задания на какой-нибудь онлайн-площадке.
3. Технические знания процесса
Что освоить?
Помимо понимания процесса тестирования нужны и базовые знания в IT. Не представляя, как приложение взаимодействует с сервером и средой, невозможно полностью разобрать логику его работы, а значит не получится провести и качественный тест.
Как?
Знания доступны в книгах, и хотя какие-то данные в них могут устареть, концепция и логика будут понятны. Потом можно будет использовать актуальные сайты, базы знаний и форумы.
- "Изучаем HTML, XHTML и CSS", Эрик и Элизабет Фримен;
- "Современные операционные системы", Эндрю Таненбаум, Херберт Бос;
- "Операционные системы. Основы и принципы", Харви Дейтел, Чофнес Д.
- "UNIX изнутри", Вахалия Ю.
- "Внутреннее устройство Microsoft Windows", М. Руссинович, Д. Соломон;
- "Введение в системы баз данных", К. Дж. Дейт;
- "MySQL по максимуму", Бэрон Шварц, Вадим Ткаченко, Петр Зайцев;
- "Семь баз данных за семь недель", Джим Р. Уилсон, Эрик Редмонд;
- "Потоковая обработка данных", Эндрю Дж. Пселтис;
- "Изучаем HTML, XHTML и CSS (Head First)", Элизабет Робсон, Эрик Фримен;
- "Новая большая книга CSS", Дэвид Макфарланд;
- "HTML и CSS. Разработка и дизайн веб-сайтов", Джон Дакетт.
Что в итоге?
При наличии базовых технических знаний вы перестанете паниковать из-за неизвестных ошибок, потому что будете понимать, как их в итоге можно опознать. Чем больше вы изучите, тем больше получите возможностей для трудоустройства и развития.
4. Коммуникативные навыки и поиск работы
Что освоить?
Любой поиск работы предполагает собеседование, а иногда – выполнение тестового задания или решение логической задачи. Специфика работы такова, что инженеру QA приходится общаться с огромным количеством людей. Коммуникативные навыки в этой профессии – одни из ключевых.
Как?
Книги – полезный ресурс для расширения горизонтов, но несмотря приведенный ниже список, главный источник навыков – практика общения. Занимайтесь ею. Профессия тестировщика не подходит для мизантропов.
- "Я слышу вас насквозь", Марк Гоулстон;
- "Мастерство общения. Как найти общий язык с кем угодно", Пол МакГи;
- "Как разговаривать с кем угодно", Марк Роудз;
- "Включаем обаяние по методике спецслужб", Джек Шафер, Марвин Карлинс;
- "Сила убеждения. Искусство оказывать влияние на людей", Джеймс Борг;
- "Как завоевывать друзей и оказывать влияние на людей", Дейл Карнеги.
Что в итоге?
Для начала просмотрите указанные в вакансиях требования – это поможет сопоставить запросы работодателей с вашими возможностями. Потом составляйте резюме, но не ограничивайтесь порталами вакансий: пройдите и по сайтам компаний, в которых вам хотелось бы попробовать свои силы.
Никогда не отправляйте резюме с набором стандартных фраз, вроде «Добрый день. Прошу рассмотреть мое резюме» – всегда пишите сопроводительное письмо и каждый раз именно для той компании, в которую его отправляете. Если вы делаете массовую рассылку – это чувствуется, а специально составленное письмо создает ощущение чего-то индивидуального.
Иногда, на собеседовании могут попросить протестировать стул, чашку, ручку или что-то из окружающей обстановки. Это проверка на адекватность и нестандартный подход, поэтому, не нужно придумывать несуществующие характеристики, оцените те, что есть и попробуйте протестировать в текущей обстановке.
Кстати, даже если ваши собеседования неудачно, не огорчайтесь. Каждая неудача дает опыт общения, к тому же вы получаете вопросы, на которые пока не можете ответить. Чтобы этот опыт был полезным, всегда пытайтесь получать от несостоявшегося работодателя обратную связь.
5. Как освоить профессию тестировщика в 1 шаг?
Никак. Не верьте громким заголовкам в рекламе экспресс-курсов. Профессия тестировщика не предполагает одного пути или одних и тех же быстрых шагов. Каждый специалист уникален благодаря индивидуальному опыту, но если вам нужен четкий план или компания для обучения, выберете курс с объемной программой и достаточным количеством учебных часов на ее освоение:
- Вселенная тестирования. Быстрый старт от тестировщика с большим бэкграундом Любови Поповой;
- Популярный онлайн университет Geekbrains предоставляет целый набор различных учебных программ;
- Обучение ручному тестированию можно пройти на портале YOUR SKILLS;
- Профессию инженера по тестированию предлагает освоить QA Марафон;
- Skillbox обучает профессии тестировщика новичков;
- Нетология организует собеседование в Альфа Банке самым лучшим ученикам.
Кстати, небольшая хитрость, если все же решите изучать азы самостоятельно – все университеты публикуют программы обучения в открытом доступе. Можно выбрать наиболее понравившуюся и использовать ее в процессе самообучения.
Если вы освоили описанный в статье багаж, можете претендовать на начальные позиции в профессии. Тестировщики-джуны выполняют простую работу и много учатся, чтобы перейти на следующий уровень квеста. Для этого обязательно нужно иметь план подготовки, и тогда вы сможете стать мидл-тестировщиком, а то и техлидом в группе QA, но это уже совсем другая история.