Как использовать Jest и Enzyme БЕЗ Create-React-App

В настоящее время я работаю над проектом для колледжа и наткнулся на очень стрессовое препятствие… ТЕСТИРОВАНИЕ. Если вы работаете с Jest, Enzyme и React, вы, вероятно, испытываете те же разочарования. Однако стресса больше нет; мои коллеги и я придумали решение кризиса тестирования.

Сначала я обратился к документации Jest, чтобы найти способ синхронизировать мои тесты с моим проектом. Документация с точки зрения настройки была немного трудной для понимания, поэтому я перешел к поиску в Google и на форумах Stack Overflow. После нескольких часов поисков мой коллега написал мне в Slack, и нам удалось прийти к решению !!

Во-первых, Jest работает вместе с Enzyme с React. Сначала я не знал, но вам понадобится файл jest.config.js, а также файл .babelrc.

Вот несколько способов настроить эти файлы:

jest.config.js

Ваш файл jest.config.js должен находиться в вашем корне

module.exports = {
setupTestFrameworkScriptFile: ‘‹rootDir› /test/setup.js’,
};

.babelrc

Ваш файл .babelrc также должен находиться в вашем корневом файле.

{
«пресеты»: [«es2015», «реагировать»]
}

Package.json

Вот как выглядел мой файл package.json после настройки. Если вы решите использовать некоторые из этих строк кода, убедитесь, что вы удалили свой package-lock.json, а также модули узлов, а затем установите npm.

Папка для тестирования

Еще один элемент, который нам нужно было настроить, - это папка «test». Эта тестовая папка также должна быть в корне моего проекта. Единственным элементом, который содержалась в тестовой папке, была папка setup.js со следующими строками кода:

Тесты

Наконец-то у нас есть тесты. Наши тесты попали прямо в нашу клиентскую папку, где были наши компоненты. Наш основной файл компонента назывался App.js, поэтому мы создали файл с именем App.test.js, который будет служить тестовым файлом для нашего основного компонента. Ниже вы увидите несколько примеров наших тестов, которые могут помочь вам в тестировании.

ВОТ И ВСЕ!

Я надеюсь, что это помогло вам преодолеть кризис тестирования !! Это был глоток свежего воздуха, преодолевший трудности создания нашей новой среды.

Прежде чем закончить эту дневниковую запись, я хочу особо поблагодарить Джо Булоса и Кевина Фунга за то, что они помогли мне справиться в это время и были замечательными коллегами, с которыми можно было писать код. Эти джентльмены сыграли жизненно важную роль в моем образовании, и я не могу их отблагодарить!

Я надеюсь, что смогу заплатить вперед, помогая вам преодолеть стресс при программировании!

«Удачи в штурме замка!»
- Маги