Платформы для начинающих тестировщиков

В российских вузах нет отдельных направлений для инженеров-тестировщиков, поэтому компаниям легче готовить таких специалистов в своих учебных центрах, а потом предлагать им работу в штате.
На стажировку поступить сложнее, чем записаться на курс от образовательной платформы, зато это бесплатно, можно сразу нарабатывать опыт и полезные контакты. Также компании охотнее берут на работу студентов именно с программ внутренних стажировок.
По специальности я бакалавр юриспруденции. На втором курсе юрфака смог сам подготовиться и устроиться в «Яндекс» специалистом поддержки «Поиска», а потом стал ментором для новичков и ответственным за качество ответов нашего направления. В 2020 году прошел курс в «Яндексе» и устроился в «Совкомбанк». На новом месте дорос до позиции QA Lead проекта. Я знаю, какие навыки нужны для старта работы, и не понимаю, почему их не дают массовые курсы.
В этой статье расскажу, у каких крупных ИТ-компании есть стажировки, курсы и вакансии интернов для студентов и как пройти отбор. Как правило, программы ориентированы на старшекурсников и недавних выпускников вузов, но есть и варианты для тех, кто уже давно выпустился.
Глоссарий
Тестирование — проверка, соответствует ли программное обеспечение заявленным требованиям.
Тест-дизайн — техники создания эффективных тестовых сценариев. Цель: при минимуме тестов найти большинство критичных дефектов.
Дефект, или баг, — некорректная работа программы, вызванная ошибкой в программном коде. Когда фактический результат не соответствует ожидаемой работе программы.
Чек-лист, тест-кейс — виды тестовой документации, по которым тестируется приложение.
Баг-репорт — отчет об ошибке. Обычно баг-репорт включает шаги воспроизведения ошибки, фактический и ожидаемый результат.
Тестирование черного ящика — метод тестирования системы без доступа к инфраструктуре и исходному коду.
Тестирование белого ящика — метод тестирования системы с доступом к инфраструктуре и исходному коду приложения.
QC (от англ. quality control) — контроль качества.
QA (от англ. quality assurance) — обеспечение качества. Оба направлены на поиск и предотвращение программных дефектов.
База данных — упорядоченный набор данных в электронном виде. Проще говоря — хранилище информации. Это составная часть большого приложения.
СУБД — система управления базами данных. Обеспечивает контроль и управление данными, хранящимися в базе.
SQL (от англ. structured query language — язык структурированных запросов) — язык запросов, с помощью которого можно управлять данными в реляционной базе.
API (от англ. application programming interface — программный интерфейс приложения) — интерфейс для взаимодействия приложений. Одни приложения будут отправлять команды, а другие — выполнять их без участия человека.
Сниффер, или анализатор трафика, — приложение, которое позволяет перехватывать сетевой трафик. Снифферы используют, чтобы определить, где возникает ошибка при передаче данных в приложениях.
Таск-трекер — система для совместной работы над задачами. В ней работают как аналитики, так и разработчики с тестировщиками.
Что должен знать начинающий тестировщик
Для начала расскажу, что нужно помнить о профессии тестировщика перед тем, как подаваться на стажировку.
Тестирование — это не легкий вход в ИТ. Кроме основ своего направления тестировщик должен знать принципы работы веб- и мобильных приложений, понимать основы сетевого взаимодействия и уметь писать на языке запросов SQL. Список можно продолжать бесконечно, главное — понять, что это инженерная специальность.
Тестирование — это не способ стать разработчиком. Если хотите стать разработчиком, то сразу становитесь разработчиком. Тестирование и разработка хоть и связаны, но это разные области знаний — только потеряете время на переобучение.
Не обязательно оканчивать вуз по технической специальности. Это облегчит погружение в профессию, но большинство работодателей смотрят на навыки кандидата, а не на образование. Тем не менее с высшим техническим образованием проще учиться и понимать процессы разработки.
Чтобы попасть на стажировку или позицию интерна, не обязательно иметь опыт. Но нужно понимать, что такое тестирование, как оно проходит и в чем разница между QC и QA.
Понадобятся хотя бы теоретические знания основ и видов тестирования, чем отличается белый ящик от черного ящика, что такое баг-репорт, тест-кейс и чек-лист. Потренируйтесь использовать техники тест-дизайна: самые основные — анализ граничных значений, классы эквивалентности. Изучите основы клиент-серверного взаимодействия, сетевые протоколы и коды ответа.
Для некоторых стажировок может потребоваться общее представление об автоматизации тестирования. Один из типичных вопросов при отборе — целесообразно ли применять ее к тому или иному продукту.
Тестировщику необходимы критическое мышление, внимательность к деталям и эстетический вкус. Не менее важно умение работать в команде и коммуникабельность: тестировщик часто общается с коллегами по проекту и из смежных отделов. Терпение и усидчивость также пригодятся: иногда требуется проходить одни и те же тестовые сценарии десятки раз после новых итераций разработки.
Как узнать о стажировках и обучении в компании
Обычно четкого расписания образовательных программ нет, поэтому лучше взять за правило периодически просматривать сайты компаний — раздел «Вакансии» или карьерный портал — и страницы в социальных сетях.
Чтобы попасть на стажировку или курс, нужно следить за датами набора: если пропустить дедлайны, придется ждать следующего потока. Можно подписаться на рассылку с оповещениями о старте набора, чтобы точно не пропустить дедлайн.
Даже если у компании нет подходящих вакансий для интернов, все равно можно откликаться кнопкой «Хочу тут работать». Это не значит, что сразу последует приглашение на собеседование. Но, скорее всего, резюме сохранят в базе кандидатов и свяжутся позже, когда начнется набор на подходящую позицию.
В этом материале собрано несколько программ, с которых можно начать вход в тестирование.
Финтех от Тинькофф Образования
Формат: онлайн-курс с лекциями и домашними заданиями
Для кого: для студентов и выпускников
Продолжительность: 3 месяца
Где следить за набором: на сайте программы или в «Телеграме»
Преподаватели программы QA Mobile расскажут про процессы разработки ПО, виды тестирования и техники тест-дизайна. Еще объяснят специфику мобильных устройств: в том числе научат пользоваться снифферами и логами. Студенты научатся работать с кодом и системами контроля версий, попробуют автоматизироваться тестирование iOS- и android-приложений, познакомятся с Kotlin и Swift. Лучших на курсе пригласят в штат.
Лучших на курсе пригласят в штат.
Программа курса QA Fullstack (Java) состоит из следующих блоков:
- Введение в разработку ПО, работа с базами данных.
- Основы Java: логические структуры, киты ООП и зачем их применять.
- Java Core: как работает Java Collection Framework, функциональное программирование.
- Теория тестирования и автоматизация тестирования.
Занятия на обоих курсах проходят онлайн, лекции занимают 2—4 часа в неделю в зависимости от программы. Во время лекции можно задавать вопросы преподавателям в «Зуме» или «Телеграме». Курс считается пройденным только при выполнении всех домашних заданий. По окончании выдается сертификат.
Как поступить. Нужно оставить онлайн-заявку на странице курса и зарегистрироваться для прохождения экзаменов. Следите за датами: если пропустить дедлайны, поступить можно будет только в следующем потоке.
Следующий шаг — заполнить анкету и сдать вступительные экзамены. В анкете будут вопросы о себе, мотивации к обучению и о предыдущем опыте.
Экзамен включает задачи по программированию, решать их можно на любом знакомом языке: например, Java, Python, C++, C#. Правильность решения проверит компьютер. Еще одна часть экзамена — тест. В основном будут вопросы по теории тестирования и кейсы, которые проверяют, как человек работает в продуктовой команде.
Ручное и автоматизированное тестирование от VK Образования
Формат: онлайн-интенсив с домашними заданиями
Для кого: для студентов российских вузов и выпускников
Продолжительность: от 16 занятий (64 академических часа) онлайн
Где следить за набором: на странице курса на сайте «VK Образование» или в группе «VK Джуниор»
У «Вконтакте» есть образовательные курсы по разным ИТ-специальностям, включая отраслевой маркетинг и рекрутмент. Для тестировщиков подходят две программы: «Ручное тестирование приложений» и «Автоматизированное тестирование».
Оба курса преподают «джентльменский набор» джуниор-тестировщика, необходимый для начала карьеры. Также там рассказывают о планировании времени, процессе релизов и обработке сообщений пользователей об ошибках. По моему опыту, немногие школы дают такие знания: обычно ограничиваются теорией тестирования.
На программе «Ручное тестирование» обещают обучить прикладным навыкам тестирования и обеспечения качества приложений:
- Разбираться в теории тестирования: видах тестирования, различиях между Quality Assurance и Quality Control, требованиях к продукту.
- Тестировать мобильные и десктопные и веб-приложения.
- Работать с тестовой документацией: составлять тест-кейсы и чек-листы.
- Заводить дефекты в баг-трекинговых системах и выставлять им приоритет.
- Работать со снифферами — Charles или Fiddler.
- Проводить юзабилити-тестирование, искать основные ошибки, влияющие на пользовательский опыт.
- Работать в команде.
Вот что входит в программу:
- Основные библиотеки для автоматизации тестирования — pytest, Allure.
- Тестирование UI: поиск локаторов, паттерн проектирования тестов Page Object Model и библиотеки Selenium, Selenide.
- Тестирование API.
- Автоматизацию проверок мобильных приложений с помощью Appium.
- Тестирование бэкенда: OC Linux, написание стабов и моков, Python ORM.
- Практики DevOps: работа с docker-контейнерами и пайплайнами в Jenkins.
От участников обоих курсов требуется присутствовать на онлайн-лекциях в «Зуме» и выполнять домашние задания, их проверяют преподаватели — сотрудники VK. Дедлайн жесткий. Также предусмотрены дополнительные задачи: например, работа с платформой VK Testers и тестирование мессенджера ICQ.
За каждое задание начисляются баллы. Если студент не сдает домашку в установленный срок, не отмечается на занятиях, его могут отчислить.
В программы курса входят два рубежных контроля и итоговый экзамен. После сдачи экзамена выдают сертификат, который можно показать будущему работодателю. Лучших студентов обещают позвать на стажировку.
Как поступить. При регистрации попросят указать вуз, факультет и курс.
В подтверждение придется прикрепить скан студенческого билета или диплом. При подаче заявки нужно кратко написать, чему вы хотите обучиться на курсе. Следующий шаг — тест.
При отборе на курс «Ручное тестирование» будут вопросы на проверку логики, знание тестирования и сетевого взаимодействия. Пройти тест нужно за 45 минут.
В отборочное испытание на курс «Автоматизированное тестирование» войдет опрос по Python 3.8 и выше, библиотеке pytest, Git, Linux, SQL, а также по теории тестирования.
Студентам, успешно сдавшим тест, на почту придет сообщение о зачислении.
Route 265 от Ozon
Формат: вебинары 2 раза в неделю и воркшопы, нагрузка — 10—12 часов в неделю
Для кого: для специалистов с опытом разработки тестов на любом языке от 2 лет
Продолжительность: 2 месяца
Где следить за набором: на сайте программы
Ozon проводит курсы Route 265 для мидл- и джуниор-разработчиков, на которых преподают эксперты компании. Для тестировщиков есть бесплатная программа «Автоматическое тестирование веб-сервисов на Go».
На курсе обещают научить:
- Тест-дизайну для веб-сервисов.
- Работе с Docker и Docker Compose.
- Написанию автотестов на Go.
- Деплою и тестированию go-проектов в Gitlab.
Программа подойдет тем, кто хочет писать бэкенд-тесты на Go и как минимум два года разрабатывал автотесты на любом языке. Для участия необходимо иметь опыт работы с Git и знать принципы работы сети. Желательно быть знакомым с Docker, CI/CD и обладать навыками тестирования бэкенда.
Занятия можно совмещать с работой, они проходят дважды в неделю по вечерам. Лучших выпускников «Озон» пригласит в штат.
Как поступить. Нужно принять участие в отборочном контесте на платформе All Cups: в него входят алгоритмические задачи на Go, задания на знание bash и SQL. На решение дается 10 часов, но, по словам организаторов, реально справиться за четыре часа. Задания из предыдущего контеста можно посмотреть на странице раунда.
Школа функционального тестирования от Bell Integrator
Формат: вебинары 2 раза в неделю вечером
Для кого: для студентов последнего курса или выпускников с техническим образованием из Москвы
Продолжительность: 1,5—2 месяца
Где следить за набором: на сайте программы
Bell Integrator разрабатывает программное обеспечение для банков, ретейла, операторов связи и бирж. Компания регулярно запускает потоки школ функционального и автоматизированного тестирования.
В школе функционального тестирования дадут практические навыки, расскажут про грамотное составление баг-репортов и работу с баг-трекинговыми системами, теорию клиент-серверного взаимодействия и тестирование API c помощью Postman.
Программа школы автоматизированного тестирования включает обучение следующим навыкам:
- Использование Java-фреймворков для автоматизации работы приложений и их тестирования.
- Создание фреймворков для автоматизации ПО.
- Работа с базами данных и написание SQL-запросов.
Лекции и семинары проходят по «Скайпу», для завершения курса необходимо выполнить домашние работы — это поможет наработать опыт. У студентов есть возможность практиковаться на проектах компании.
По результатам обучения обещают трудоустройство в компанию на позицию джуниор-тестировщика, поэтому рассматривают кандидатов, готовых работать полный рабочий день в московском офисе.
Как поступить. Прием в школу происходит на конкурсной основе. На первом этапе необходимо решить тестовое задание, на втором — пройти онлайн-собеседование.
Тестирование программного обеспечения от СКБ Контур
Формат: вебинары 2 раза в неделю по понедельникам и четвергам
Для кого: для студентов и взрослых из Екатеринбурга
Продолжительность: 2 месяца — с февраля по апрель
Где следить за набором: на сайте программы, следующий набор — в феврале 2023 года
«СКБ Контур» разрабатывает программы, которые помогают бизнесу вести онлайн-бухгалтерию и облачный товароучет, сервисы для электронного документооборота и онлайн-кассы.
«Контур» проводит образовательные программы для студентов в нескольких городах: стажировки по направлениям Data Science, iOS, Backend C# и Backend Java и школы «Шпора С#» и «Шпора фронтенда».
Для тестировщиков есть отдельный курс — «Тестирование программного обеспечения», он проходит в Екатеринбурге, где находится штаб-квартира компании.
На курсе научат:
- Проектировать проверки с помощью исследовательского тестирования и эвристик-тестирования SFDPOT и FEW HICCUPPS.
- Техникам тест-дизайна: разбивке на классы эквивалентности и граничные значения, составлению диаграммы состояний и переходов.
- Составлять чек-листы, тест-кейсы, интеллектуальные карты и выбирать наиболее удобные виды документации для каждого случая.
- Обращаться с системой контроля версий Git, Continuous Integration, тестировать API c помощью Postman.
- Синтаксису SQL и инструментам разработчика в браузере Google Chrome.
- Автоматизации тестирования с Selenium WebDriver.
На курсе стажеры самостоятельно изучают теорию и делают домашние задания, а на уроках практикуются вместе с преподавателем. Финалом курса станет практическая работа: задание, на котором нужно применить все полученные знания и протестировать задачу — попробовать себя в реальных условиях тестирования.
Как поступить. Чтобы подготовиться к поступлению, организаторы рекомендуют посмотреть онлайн-лекции по тестированию ПО, записанные тестировщиками «Контура».
После заполнения заявки кандидату отправят тестовое задание на способность придумывать проверки, находить баги и документировать их. Те, кто успешно решит его, будут зачислены на курс. Лучших пригласят на оплачиваемую летнюю стажировку в «Контур», а потом предложат штатную позицию.
Автор: Марк Глушков
Источник: Журнал Тинькофф