Полное руководство по модульному тестированию Angular 8 и сквозному тестированию (E2E), включая рекомендации по тестированию и CI.
Этот видеокурс, в комплекте с работающим репозиторием Github, представляет собой полное пошаговое руководство по тестированию Angular в целом. Мы собираемся взять небольшой пример приложения, которое уже завершено, но еще не тестировалось.
Затем мы собираемся обсудить лучший подход к тестированию каждой части приложения, и мы собираемся написать тесты шаг за шагом, объясняя каждое решение на своем пути.
Мы начнем с написания модульных тестов для нескольких частей приложения, а затем на более позднем этапе мы узнаем, как выполнять сквозные (E2E) тесты.
Этот курс не только рассказывает о том, как тестировать, но и о том, когда тестировать и почему, а также о всевозможных методах тестирования.
Беглый взгляд на курс
Начиная с нуля, мы собираемся представить концепции тестирования на основе поведения, быстро представив основные концепции и утилиты среды тестирования Jasmine.
Затем мы расскажем о лучших методах тестирования и поговорим о mocks и spies Jasmine. Затем мы представим некоторые из утилит Angular Testing, таких как Angular TestBed, которые мы будем использовать для тестирования нескольких простых сервисов Angular.
Затем мы собираемся перейти к тестированию более сложного сервиса Angular и поговорим о моделировании Angular HTTP-запросов, после чего мы рассмотрим тестирование компонентов Angular.
Мы собираемся узнать, как тестировать компоненты Angular с DOM и без него, какие части компонента тестировать, и мы подробно рассмотрим асинхронные тесты с использованием утилит fakeAsync и async.
Мы расскажем, как тестировать несколько типов типичных компонентов Angular, таких как, например, презентационные компоненты и интеллектуальные или контейнерные компоненты, и узнаем, как имитировать сервисы на основе Angular Observable.
После модульного тестирования нескольких компонентов нашего приложения мы собираемся создать набор тестов сквозных тестов с использованием Cypress.
После того, как у нас есть тесты, написанные для нашего приложения, мы собираемся развернуть их в Travis CI и убедиться, что тесты запускаются при каждом коммите.
В конце курса мы собираемся создать отчет о тестовом покрытии и обсудить некоторые показатели.
Содержание
Этот курс будет проходить по следующим темам:
- Введение в среду тестирования Jasmine
- Введение в Jasmine spies
- Модульное тестирование простых сервисов Angular
- Лучшие практики тестирования Jasmine
- Введение в утилиты Angular тестирования
- Тестирование комплексных сервисов Angular
- Mocking над Angular HTTP-запросами
- Модульное тестирование Angular компонентов
- Асинхронное Angular тестирование с использованием fakeAsync и async
- Mocking наблюдаемых сервисов
- Модульное тестирование презентационных компонентов
- Модульное тестирование смарт-или контейнерных компонентов
- Моделирование взаимодействия с пользователем в модульных тестах
- Сквозное Angular тестирование с Cypress
- Непрерывная интеграция с Travis CI
- Отчеты об испытаниях Angular CLI
Что вы узнаете в этом курсе?
С этим курсом вы будете чувствовать себя комфортно при написании тестов Angular для различных типов сервисов и компонентов. Вы будете знать не только несколько доступных утилит для тестирования Jasmine и Angular, но также будете знать, когда их использовать и почему.
Вы будете знакомы с рекомендациями по Angular тестированию и узнаете, как писать полезные тесты, которые не требуют много времени для написания и которые вносят большой вклад в долгосрочное здоровье вашего проекта.