Тестирование Vue-приложений (2021) Мастер-класс
Тестирование Vue-компонентов не самая сильная сторона даже тех, кто съел собаку на тестировании к примеру backend-кода. Здесь “аукается” то, что во Vue очень много сложных возможностей, которые нетривиально тестировать. Добавьте к этому некие удивительные особенности @vue/test-utils (у автора порядка 10 принятых pull-requests в репозиторий) - и получите прекрасный коктейль сложного тестирования
Теоретическая часть (записанные видео)
Видео представляют собой небольшие (~15-30 минут) фрагменты теоретических изысканий, объясняющих всё “на пальцах” (а точнее пером по экрану)
Что именно тестируется во Vue-компонентах?
-Вывод компонента в зависимости от props
-Когда мы передаем такие-то параметры, мы ожидаем что кнопка видна
-Когда мы передаем такие-то параметры, мы ожидаем, что видна аватарка пользователя с такими-то параметрами
-Генерирование побочных эффектов
-Когда пользователь нажимает на вот этот элемент, мы ожидаем что компонент генерирует событие "Submit" с такими-то параметрами
-Когда компонент появляется в DOM-дереве, мы ожидаем что компонент вызывает функцию getUser у такого-то объекта
Реакция компонента на внешние воздействия
-Когда мы вводим данные в это поле, мы ожидаем что вот эта кнопка будет включена
-Когда компонент dropdown генерирует событие change, мы ожидаем что вот это поле будет обновлено
-Когда вызванная функция возвращает такие-то значения, мы ожидаем что в списке будет ровно три элемента
Что предлагает нам @vue/test-utils для тестирования?
-Жизненный цикл компонента сквозь призму тестирования
-Холивар: mount vs shallowMount
-Как выбрать?
-Стоит ли всегда выбирать одно?
-Последствия выбора?
Бонус: А что поменяется во Vue3?
Бонус: Компонентные тесты и Vue: как и когда?
Практическая часть (семинары)
Семинар представляет собой написание и критику конкретных тестов на Jest реального кода с пояснением что и для чего применяется. Другими словами: соотношение “документации” к практике ее применения составляет около 30 к 70% по оценке автора
Антипаттерны тестирования Vue-компонентов
-Тестирование computed-свойств
-Использование setData
-Использование setProps
-Использование setMethods
Тестирование снапшотами
-Какие задачи решают снапшоты
-Когда стоит использовать снапшоты и как
-Слабые места снапшотов
Структура классического Vue-теста
Фикстуры
-Какую задачу решают фикстуры?
-Почему важно использовать фикстуры, а не писать самому параметры?
-Аккуратно: мутация фикстур!
-Признаки "здесь надо использовать фикстуры"
Тестирование компонентов со слотами
-В чём сложность?
-Создание простейшего стаба для рендера слота
-Стабы с динамическими слотами
-Scoped slots с логикой
-Когда можно вместо стаба передать настоящий компонент и чем это грозит?
Тестирование компонентов с Vuex
-Создание и передача мока сторы
-Как портят жизнь `mapActions, map...`
-Корректно мокаем actions/mutations
-Тестирование самой сторы
Тестирование компонентов с Apollo GraphQL
-Что для компонента означает использование в нем Apollo?
-apollo-link-mock
-На что обратить внимание
Информация о видео
Название: тестирование Vue-приложений
Автор: Илья Климов
Год выхода: 2021
Жанр: Мастер-класс
Язык: Русский
Выпущено: Россия
Продолжительность: ~10 часов
Файл
Формат: MP4
Видео: AVC, 1280x720/854x480, ~393 Kbps
Аудио: AAC, 128 Kbps, 48.0 KHz
Размер файла: 1.9 Gb
Внимание! У Вас нет прав для просмотра скрытого текста.
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.