От беглого взгляда в нескольких проектах node.js на Github я заметил, что общим соглашением является размещение тестовых файлов в каталоге ./spec
(точное название может отличаться: ./tests
, ./specs
, и т.д.). Назовем это «классической» организацией проекта.Node.JS: тестовый код против организации производственного кода
С другой стороны, есть также (по крайней мере, теоретически) «локализация» организация: каждый тестовый файл находится в том же каталоге, что и файл производство тестируется (например, под ./controllers
мы будем иметь login_controller.js
, а также login_controller.spec.js
).
Для того, чтобы избежать теологических сражения на этом явно субъективном тему I будет задать конкретные вопросы:
- Кто-нибудь видел основные модули/приложения с использованием локализующих организации?
- Существуют ли серьезные недостатки/ограничения для локализующей организации? «hard» я имею в виду что-то вроде «хорошо, Heroku не включает спецификацию/каталог в своем пакете развертывания (a.k.a slug), поэтому классическая организация имеет меньший след на сервере».
- Существуют ли рамки тестирования (Mocha, jasmine-node и co.), Которые каким-то образом навязывают «классическую» схему?