Инженер по тестированию: расширенный курс

Нетология
4,84
Освойте профессию инженера по тестированию, для которой не требуется опыт и техническое образование. Пройдите комплексную программу по ручному и автоматизированному тестированию и изучите 3 языка программирования: Java, JavaScript и Python.
Срок обучения: 15 месяцев
Без опыта
4,76
На основании отзывов пользователей
на Отзовике, IRecommend и TutorTop
от 3 816 /мес
или сразу от 137 400
229 000
Смотреть курс
Программа обучения
Ручное тестирование
Ручное тестирование веб-приложений

Курсовой проект

Научитесь проводить ручное тестирование, на практике поработаете с различными продуктами. Выполните курсовой проект.

12 часов теории

48 часов практики

Введение в тестирование ПО. Методы и виды тестирования

Тестирование ПО. Тест-дизайн

Артефакты тестирования. Тестовая документация

Артефакты тестирования. Дефекты

Инструменты тестирования для работы с документацией

Основы клиент-серверного взаимодействия

Особенности тестирования web-приложений и работа с Chrome

Инструменты тестирования. Клиент-Сервер

Жизненный цикл разработки ПО. Гибкие методологии разработки ПО

Курсовой проект: проведение тестирования сайта крупной компании

Git — система контроля версий

Каждый тестировщик должен знать основы работы с системой Git, так как сейчас это практически стандарт по управлению исходным кодом. За 3 занятия вы научитесь работать с этой системой и с сервисом GitHub, сможете публиковать свои домашние работы и уже в процессе обучения сформируете первое портфолио (работодатели часто просят показать примеры вашего кода на GitHub).

4 часа теории

3 часа практики

Предназначение системы контроля версий

Основные операции (фиксация и откат изменений, поиск, история)

Работа с сервисом GitHub

Ветки, слияние веток и разрешение конфликтов

Командная работа

IT-системы и операционная система Linux

Только в этой программе

Изучите структуру и функционирование IT-систем, включая архитектуру компьютера и принципы работы операционных систем. Освоите навыки администрирования и настройки виртуальных рабочих мест. Познакомитесь с операционной системой Linux и основами работы в терминале.

12 часов теории

14 часов практики

Администрирование IT-систем

Архитектура компьютера. Операционная система

Настройка виртуального рабочего места

Знакомство с операционной системой Linux

Типы дистрибутивов

Основы работы в терминалe ОС Linux

Дипломная работа по ручному тестированию
Инженер по тестированию: базовая программа
Python для тестировщиков

На выбор

Погружаемся в Python — один из ключевых языков для автоматизации тестирования. Вы познакомитесь с основами Python, изучите синтаксис языка, работу с данными, ООП, файлами и API — всё, что нужно для написания тестов и автоматизации рутинных проверок.

17 часов теории

73 часа практики

Python. Знакомство с консолью

Условные конструкции. Операции сравнения

Введение в типы данных

Циклы

Коллекции данных: множества

Коллекции данных: словари

Функции: использование встроенных и создание собственных

Разбор вопросов

Объектно-ориентированное программирование

• Объекты и классы. Взаимодействие между ними • Наследование, инкапсуляция и полиморфизм

Работа с файловой системой в Python

• Открытие и чтение файла, запись в файл • Работа с разными форматами данных

Работа с внешним API

• Работа с библиотекой Requests, http-запросы • Работа с классами на примере API VK • Разбор вопросов

Курсовой проект: резервное копирование

Java для тестировщиков

На выбор 

Начинаем работу с Java, одним из самых популярных языков программирования. Блок включает в себя изучение основ языка, работу с объектно-ориентированным программированием, сборку Java-проектов и использование инструментов тестирования. Вы изучите язык программирования именно в связке с задачами тестирования.

17 часов теории

75 часов практики

Введение в Java: JDK, JRE, JVM, IntelliJ IDEA

Программирование на Java: переменные, операторы, работа с отладчиком

Примитивные типы данных, условные операторы, выход за границы типов и погрешность вычислений

Testability, автотесты, введение в ООП: объекты и методы

Система сборки Maven, управление зависимостями, автотесты на JUnit5

Циклы, параметризованные тесты и аннотации

Выстраивание процесса непрерывной интеграции (CI): Github Actions. Покрытие кода с JaCoCo, статический анализ кода: CheckStyle, SpotBugs

Объектно-ориентированное программирование и проектирование

Объекты с внутренним состоянием, управление состоянием при тестировании

Композиция и зависимость объектов. Mockito при создании автотестов

Наследование и расширяемость систем. Проблемы наследования

Исключительные ситуации и их обработка. Тестирование исключений

Интерфейсы для организации малой связности. Обобщённое программирование (Generics)

Collections Framework. CRUD и тестирование систем, управляющих набором объектов

Автоматизированное тестирование на Python или Java

Погрузитесь в изучение языка программирования, который выбрали — Python или Java, — углубитесь в изучение автоматизации и освоите профессиональные инструменты для автотестов.

21 час теории

от 46 часов практики

На программе по Python:

• Основы автоматизации • Тестирование API и Continuous Integration • Тестирование веб-интерфейсов с Selenium • Паттерны и Behavior-Driven Development (BDD) • Docker для тестирования • Работа с SQL • Репортинг и анализ тестов

На программе по Java:

• Основы автоматизации • Тестирование API. Continuous Integration • Тестирование веб-интерфейсов. Selenium • Selenide • Patterns • Docker и Docker Compose • SQL • Репортинг: Report Portal • Behaviour Driven Development

Дипломная работа базовой программы

Диплом

Вы суммируете знания и навыки, полученные на курсе, и напишете диплом по автоматизации тестирования веб‑сервиса приложения по организации путешествий. Проект будет оформлен в GitHub — вы сможете показать его в качестве портфолио при отправке резюме.

Инженер по тестированию: расширенная программа
JavaScript для тестировщиков

Вы изучите основы JavaScript для проведения тестирования Frontend-части сайта (UI и e2e). На базе уже изученного Java, вам будет проще освоить второй язык, тем более JavaScript — скриптовый язык более высокого уровня. Вы изучите разницы в синтаксисе языков, научитесь использовать основные конструкции языка.

14 часов теории

36 часов практики

Основные понятия

Расширенная работа с массивами

Классы

Асинхронность

Функции

Объекты

Обработка исключений и замыкания

Функции декораторы, оператор “...“, call, apply

Автоматизация тестирования веб-интерфейсов

Перейдём к работе с современными инструментами для тестирования frontend: Puppeeter, Playwright, Cypress, познакомимся с платформой NodeJS. Это инструменты на JavaScript, которые автоматизируют действия в браузере и помогут ускорить проведение тестов.

8 часов теории

32 часа практики

Использование JavaScript в браузере. Тестирование, дебаггинг

Jest

Puppeeter

Playwright

Cypress

Платформа Node.js

CI/CD

Ручное тестирование мобильных приложений

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

7 часов теории

28 часов практики

Ручное тестирование мобильных приложений 

Тестирование Android-приложений

Выбор устройств для тестирования

Тестирование iOS-приложений

Инструменты для ручного тестирования мобильных приложений

Особенности функционального и нефункционального тестирования на мобильных устройствах

Снифферинг. Настройка и возможности

Автоматизированное тестирование мобильных приложений

Для автоматизации работы вы будете использовать Java, Android Studio, UI Automator, Espresso, Appium. С полученными навыками сможете тестировать разные приложения: игры, утилиты и другие.

6 часов теории

24 часа практики

Основы автоматизации тестирования мобильных приложений

XCTest. Автоматизация тестирования iOS

UIAutomator. Автоматизация тестирования Android

Appium. Кроссплатформенная мобильная автоматизация тестирования

Espresso. Автоматизация тестирования Android

Дипломная работа расширенной программы

Диплом

Напишете проект по автоматизации тестирования мобильного приложения благотворительной организации

5 часов теории

4 часа практики

Составите чек-лист для проверки приложения и напишете тест-кейсы для проверки приложения

Проведёте ручное тестирование мобильного приложения «Мобильный хоспис»

Протестируете приложение на эмуляторах в Android Studio

Автоматизируете составленные тест‑кейсы на языке Java, с помощью фреймворков Espresso и Appium

Составите отчёт об автоматизированном тестировании с использованием Allure

Оформите все артефакты: план тестирования, тест-кейсы, чек‑лист, баг-репорты и отчёты

Бонусные модули для развития карьеры
Логические операторы и алгоритмы

Для плавного входа

Узнаете, как хранится и передаётся информация на компьютере. Освоите принципы и методы построения алгоритмов на базовом уровне.

4 часа теории

4 часа практики

Ручное тестирование мобильных приложений

Программа ручного тестирования

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

7 часов теории

28 часа практики

Ручное тестирование мобильных приложений 

Тестирование Android-приложений

Выбор устройств для тестирования

Тестирование iOS-приложений

Инструменты для ручного тестирования мобильных приложений

Особенности функционального и нефункционального тестирования на мобильных устройствах

Снифферинг. Настройка и возможности

Тестирование производительности

Расширенная программа

В этом блоке изучите в теории и на практике одни из самых важных типов тестирования веб-приложений: тестирование производительности. Вы познакомитесь с нагрузочным тестированием, стресс-тестированием, объёмным тестированием, тестированием стабильности и другими. Для работы потребуются специальные инструменты: для генерации нагрузки и для мониторинга характеристик производительности. На практике поработаете с инструментом JMeter, который позволяет проводить нагрузочное тестирование, логировать результаты и визуализировать в виде диаграмм и таблиц.