В React, хранение файлов с тестами зависит от того, какая архитектура используется: модульная или FSD (Feature-Scoped Directory).
При использовании модульной архитектуры, где каждая функциональность разбивается на отдельные модули, файлы с тестами обычно располагаются в папке с модулем. Для каждого модуля создается отдельная папка tests или __tests__ (обычно рекомендуется использовать последнюю), где размещаются файлы с тестами.
Структура папок обычно выглядит следующим образом:
src/ |- modules/ |- myModule/ |- __tests__/ |- myModule.test.js |- another.test.js |- myModule.js |- ...
Здесь myModule.js
- это основной файл модуля, а myModule.test.js
и another.test.js
- файлы с тестами. Такая организация позволяет легко находить и поддерживать связанные файлы модуля в одном месте.
В случае использования FSD-архитектуры, где каждая функциональность имеет свою собственную директорию, файлы с тестами обычно размещаются внутри директории модуля. Например, представим, что у нас есть модуль "Корзина", а также команда "Добавить в корзину". Структура папок может выглядеть следующим образом:
src/ |- modules/ |- cart/ |- __tests__/ |- cart.test.js |- add-to-cart.test.js |- Cart.js |- add-to-cart/ |- __tests__/ |- add-to-cart.test.js |- AddToCart.js |- ...
Здесь cart.test.js
и add-to-cart.test.js
- это файлы с тестами для соответствующих модулей. Такое разделение помогает легче поддерживать тесты каждого модуля.
В обоих случаях, рекомендуется использовать конкретное название для папки с тестами, такое как __tests__
, чтобы разработчики сразу понимали, что это директория с тестами.
Кроме того, можно использовать библиотеки тестирования, такие как Jest или Enzyme, которые предлагают свои рекомендации для организации файлов с тестами в React-приложениях.