Модульное тестирование — это способ убедиться, что ваш код уже работает должным образом. Это подходящее решение, чтобы избежать чего-то плохого или неправильного в продукте разработки. (Рохмад, 2018)
Модульное тестирование включает в себя разбиение вашей программы на части и проведение серии тестов для каждой части. (МэттДжей, 2016)
Внедрение модульного тестирования, вероятно, немного потратит ваше время. Но чтобы избежать ошибок в будущем, это отличный способ сделать законченную разработку и сделать ее так, как ожидалось.
Приложение Vue состоит из некоторых компонентов, которые, вероятно, можно использовать повторно и имеют конкретную задачу.
Здесь я поделюсь со всеми вами советами по внедрению модульного тестирования в ваше приложение Vue.
Я предполагаю, что вы уже знакомы с Vue.js и Vuex, по крайней мере, с базовыми знаниями.
Для начала мы бы создали приложение, которое добавило модульное тестирование в каждый его компонент, а также в магазин Vuex.
Установочный проект
Сначала вы должны клонировать этот репозиторий. Однако, если вы хотите внедрить в существующее приложение. Вы можете пропустить этот шаг.
git clone https://github.com/rohmad-st/vue-learning-app.git
Модульное тестирование в компоненте
Из приведенного выше проекта теперь у нас есть компонент Product.vue. Я использую Vuetify в качестве базовой системы проектирования. Поэтому, если вы не знакомы с ним, вы должны сначала прочитать его в https://vuetifyjs.com/en/getting-started/quick-start:
Надеюсь, вы уже знакомы с Vuex, потому что здесь мы также узнаем, как внедрить модульное тестирование в Vuex.
Посмотрите на компонент Product.vue выше, теперь мы попробуем написать для него модульное тестирование. Здесь у нас есть проблемы, чтобы также убедиться, что Vuetify и Vuex также могут работать, поэтому некоторые шаги, которые я делаю:
- импортируйте Vuetify и Vuex в наш файловый тест.
- провести пробное тестирование действий и геттеров vuex
В этом компоненте я ожидал, что заголовок класса headline будет совпадать с заголовком свойств продукта [строка кода: 28–36].
- строка 29: подготовить продукт модели данных
- строка 33: поместите наши фиктивные данные о продукте в параметр props
Модульное тестирование в Vuex Stores
У нас есть модуль products.js для обработки всех событий в действиях продукта.
Из приведенного выше модуля vuex теперь мы добавим коды строк, чтобы протестировать его.
Наши ожидаемые:
- убедитесь, что ответ getAll() правильный, вывод имеет тот же результат, что и макет данных. (кодовая строка: 17–23)
- убедитесь, что действие также переключает любимую работу. можно делать как добавить, так и удалить как избранное. (кодовая строка: 25–40)
- Проверьте, что геттер favoriteIndex получает правильный индекс. (кодовая строка: 42–48)
- Проверьте, что геттер isFavorite получает правильный результат. (кодовая строка: 50–52)
Теперь вы уже можете внедрить модульное тестирование как в компонент vue, так и в vuex.
Не стесняйтесь обсуждать и делиться ею, если считаете, что эта статья полезна. :)