Интенсив по тестированию на React [GeekBrains] [Александр Сокол]
Напишите ваш первый автотест за 2 дня
Это интенсив для JavaScript-разработчиков: вы научитесь писать автотесты, пользоваться инструментами для тестирования и собирать метрики покрытия. Расскажем, как эффективно тестировать приложения и обходить сложности.
Зачем разработчику автоматическое тестирование?
Автоматизированное тестирование помогает быстрее находить и устранять ошибки в программе. Расскажем, как писать тесты и ускорить доставку на продакшен.
Вы научитесь:
Что нужно знать перед обучением:
• Командную строку для работы с инструментами тестирования.
• JavaScript: замыкания, async/await-синтаксис, умение разрабатывать простые приложения на Node.js или создание веб-приложений с помощью React.
Как прокачается ваше резюме после интенсива
Вы узнаете про разные виды тестирования проекта и научитесь использовать инструменты Jest, Mocha, Cypress. Также вы сможете собирать статистику покрытия тестами для дальнейшей интеграции в CI.
Формат: онлайн-вебинары с практикой
Длительность: 2 дня, 12 часов
Напишите ваш первый автотест за 2 дня
Это интенсив для JavaScript-разработчиков: вы научитесь писать автотесты, пользоваться инструментами для тестирования и собирать метрики покрытия. Расскажем, как эффективно тестировать приложения и обходить сложности.
Зачем разработчику автоматическое тестирование?
Автоматизированное тестирование помогает быстрее находить и устранять ошибки в программе. Расскажем, как писать тесты и ускорить доставку на продакшен.
Вы научитесь:
- Устанавливать и настраивать инструменты, автоматизировать все этапы тестирования
- Работать с Cypress, настраивать окружение, писать e2e-тесты, запускать тесты на CI
- Помогать бизнесу проверять гипотезы и быстрее реагировать на требования клиентов
Что нужно знать перед обучением:
• Командную строку для работы с инструментами тестирования.
• JavaScript: замыкания, async/await-синтаксис, умение разрабатывать простые приложения на Node.js или создание веб-приложений с помощью React.
Как прокачается ваше резюме после интенсива
Вы узнаете про разные виды тестирования проекта и научитесь использовать инструменты Jest, Mocha, Cypress. Также вы сможете собирать статистику покрытия тестами для дальнейшей интеграции в CI.
День 1
Теория тестирования. Вы познакомитесь с различными видами и инструментами тестирования.
Тема 1
Автоматизация ручного тестирования написанного кода. Демонстрация проекта, покрытого тестами, и внесение изменений в проект. Пример интеграции тестов в CI для релизов.
Тема 2
Пирамида тестирования, функциональное и нефункциональное тестирование, принципы F.I.R.S.T. и TDD/BDD. Очередность написание тестов (от unit до e2e). Статические анализаторы кода ESLint, Prettier, Flow.
Тема 3
Преимущества и недостатки юнит-тестов.
Тема 4
Jest, React-Testing Library.
Практика. Вы освоите инструменты тестирования, напишете первый юнит-тест и научитесь тестировать React-компоненты.
Тема 1
Установка и конфигурация Jest. Написание тестов на простые функции в окружении Node.js. Обзор Jest API: equals, toBe.
Тема 2
Работа с асинхронными тестами. Написание тестов для юнита, работающего с API. Сбор статистики покрытия тестами.
Тема 3
Тестирование React-компонентов, использование jsDom, разбор видов рендера jsDom.
Тема 4
Тестирование React Hooks, использование React Testing Library. Разбор, как работают моки.
День 2
Теория. Узнаете, как использовать e2e- и юнит-тесты в проекте.
Тема 1
Разница между e2e- и юнит-тестами. Подход BDD для разработки фич.
Тема 2
Интеграционные и сквозные тесты. Заглушки для данных API. Демонстрация подготовленного проекта, с возможностью тестов с заглушками для данных и без заглушек.
Тема 3
Тестирование в различных окружениях: разные версии браузеров, мобильные устройства.
Тема 4
Пара слов о тестировании UI-скриншотами.
Практика, 3 часа. Научитесь работать с Cypress и писать e2e-тесты.
Тема 1
Установка и настройка Cypress для e2e-тестов. Написание простого теста для предыдущего проекта.
Тема 2
Написание теста. Демонстрация работы с роутингом, с DOM-элементами и HTTP-запросами на примере тестирования авторизации приложения.
Тема 3
Автоматические скриншоты для тестирования вёрстки.
Тема 4
Объединяем новые знания: покрываем компоненты проекта юнит-тестами и пишем e2e-тесты для приложения. Автоматизируем процесс с помощью npm-скриптов, демонстрируем запуск тестов в GitHub CI.
Теория тестирования. Вы познакомитесь с различными видами и инструментами тестирования.
Тема 1
Автоматизация ручного тестирования написанного кода. Демонстрация проекта, покрытого тестами, и внесение изменений в проект. Пример интеграции тестов в CI для релизов.
Тема 2
Пирамида тестирования, функциональное и нефункциональное тестирование, принципы F.I.R.S.T. и TDD/BDD. Очередность написание тестов (от unit до e2e). Статические анализаторы кода ESLint, Prettier, Flow.
Тема 3
Преимущества и недостатки юнит-тестов.
Тема 4
Jest, React-Testing Library.
Практика. Вы освоите инструменты тестирования, напишете первый юнит-тест и научитесь тестировать React-компоненты.
Тема 1
Установка и конфигурация Jest. Написание тестов на простые функции в окружении Node.js. Обзор Jest API: equals, toBe.
Тема 2
Работа с асинхронными тестами. Написание тестов для юнита, работающего с API. Сбор статистики покрытия тестами.
Тема 3
Тестирование React-компонентов, использование jsDom, разбор видов рендера jsDom.
Тема 4
Тестирование React Hooks, использование React Testing Library. Разбор, как работают моки.
День 2
Теория. Узнаете, как использовать e2e- и юнит-тесты в проекте.
Тема 1
Разница между e2e- и юнит-тестами. Подход BDD для разработки фич.
Тема 2
Интеграционные и сквозные тесты. Заглушки для данных API. Демонстрация подготовленного проекта, с возможностью тестов с заглушками для данных и без заглушек.
Тема 3
Тестирование в различных окружениях: разные версии браузеров, мобильные устройства.
Тема 4
Пара слов о тестировании UI-скриншотами.
Практика, 3 часа. Научитесь работать с Cypress и писать e2e-тесты.
Тема 1
Установка и настройка Cypress для e2e-тестов. Написание простого теста для предыдущего проекта.
Тема 2
Написание теста. Демонстрация работы с роутингом, с DOM-элементами и HTTP-запросами на примере тестирования авторизации приложения.
Тема 3
Автоматические скриншоты для тестирования вёрстки.
Тема 4
Объединяем новые знания: покрываем компоненты проекта юнит-тестами и пишем e2e-тесты для приложения. Автоматизируем процесс с помощью npm-скриптов, демонстрируем запуск тестов в GitHub CI.
Длительность: 2 дня, 12 часов
https://react-testing.geekbrains.ru/