Как использовать другой файл tsconfig для тестовых файлов в vscode?

Этот вопрос аналогичен этому вопросу: Как использовать другой файл tsconfig для тестов ? Но я прошу код Visual Studio.

У меня есть два tsconfig файла:

  • tsconfig.json для всех файлов приложений
  • tsconfig.test.json для всех тестовых файлов

tsconfig.json исключает все *.spec.ts, а tsconfig.test.json включает только эти файлы.

Как я могу сделать так, чтобы код Visual Studio понимал, что открытый .spec.ts файл принадлежит tsconfig.test.json?

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


person Michael Hilus    schedule 15.07.2019    source источник
comment
Для тех, кто ищет противоположный макет с тестами в отдельной папке, см. Этот полезный ответ о том, как заставить VSCode работать должным образом: stackoverflow.com / a / 61153019/3082178.   -  person AKd    schedule 19.11.2020
comment
Начиная с TS 3.0 есть ссылки на проекты, которые решают именно эту проблему. typescriptlang.org/docs/handbook/project-references.html   -  person polkovnikov.ph    schedule 02.07.2021


Ответы (1)


VS Code на данный момент имеет ограничение до одного tsconfig.json (см. https://github.com/microsoft/vscode/issues/12463).

Учитывая структуру проекта:

  • src /
  • tsconfig.json
  • tsconfig.test.json

Создайте ./src/tsconfig.json файл с содержимым:

{
  "extends": "../tsconfig.test.json"
}
person yavulan    schedule 10.11.2019
comment
Означает ли это, что файлы, которые не тестируются в src /, будут использовать src / tsconfig.json? - person xaunlopez; 01.07.2020
comment
да, к сожалению, по моему опыту, это так. Это означает, что VS Code сообщит, что File не является частью проекта Typescript. - person Greg Beaver; 22.12.2020