Легче ли размещать тестовые файлы рядом с исходными файлами, которые они тестируют (в том же каталоге src
), или должен быть создан отдельный каталог tests
с зеркальной иерархией?
Наличие в одной папке, похоже, облегчает жизнь, когда дело доходит до обслуживания, но также толпит исходные каталоги.
Вариант 1: Структура каталогов при наличии отдельных папок для источника и тестов:
- src
+-- item.ts
`-- util
+-- helper.ts
- test
+-- item.test.ts
`-- util
`-- helper.test.ts
Вариант 2: Структура каталога при наличии обоих типов файлов в одном каталоге:
- src
+-- item.ts
+-- item.test.ts
`-- util
+-- helper.ts
`-- helper.test.ts
Я всегда ходил с опцией 1, пока не пробовал angular-cli
и не создавал файлы кода вместе с тестовыми файлами, как в варианте 2, что заставило меня переосмыслить все это.