Appearance
Мой подход к тестированию
Классификация тестов:
- End to end
- Integration
- Unit
Unit тесты
В качестве unit'а используем компонент.
Тестируем только входные и выходные параметры:
- props
- emits
- корректность отрисованного html
- вызовы api
- изменения store
Не тестируем все, что находится внутри компонента:
- computed
- methods
- watcher
- переменные и их значения
Если кажется, что какая-то логика компонента должна быть протестирована отдельно, то нужно рассмотреть возможность разбиения компонента на несколько или выноса этой логики в отдельную функцию, которая будет импортироваться в компонент.
Unit тесты пишем с использованиме jest.
Интеграционные тесты
В качесте тестируемой единицы выступает страница приложения.
Тестируем различные flow пользователя на странице.
Для интеграционного тестирования используем cypress.
End to end
Тестируем flow пользователя в рамках приложения.
Для end to end тестирования используем cypress.