Неподтвержденные точки останова при отладке Mocha-тестов Typescript в Docker с кодом Visual Studio - PullRequest
0 голосов
/ 22 мая 2019

Я пытаюсь отладить тест Mocha с помощью кода Visual Studio, который выполняется в контейнере Docker.Из-за контейнера Docker я должен запустить тесты изнутри контейнера и прикрепить к нему, что дисквалифицирует ответы типа этот .Я получаю отладчик для подключения, и он даже не работает с включенным флагом --debug-brk.Но каждая установленная мной точка останова помечается VS Code как «непроверенная точка останова», независимо от того, установил ли я ее:

  • в проверенных файлах Typescript
  • в файлах Javascript, прямо или косвенно необходимыхс помощью файлов Typescript
  • в выводе компилятора Typescript

Вот что я делаю:

  1. Выполнение npm test внутри контейнера, который переводится в NODE_ENV=test API_PORT=8081 DBDATABASE=tests mocha --timeout 50000 -r source-map-support/register -r ts-node/register --preserve-symlinks --exit --debug-brk --inspect=0.0.0.0:9229 "./src/**/*.spec.ts"
  2. Запустите отладчик.
  3. Установите точку останова.Он сразу же отключается и говорит «Непроверенная точка останова» при наведении курсора.

Соответствующая часть launch.json:

{
    "type": "node",
    "request": "attach",
    "name": "Debug Backend",
    "port": 9229,
    "restart": true,
    "protocol": "inspector",
    "localRoot": "${workspaceFolder}/api/backend/",
    "remoteRoot": "/api/backend/",
    "outFiles": ["${workspaceFolder}/api/backend/dist/**/*.js"],
    "skipFiles": ["<node_internals>/**/*.js"]
},

В случае, если это может иметь значение, вот1030 *:

{
  "compilerOptions": {
    "target": "es6",
    "module": "commonjs",
    "lib": ["es5", "dom", "scripthost", "es2017", "es6", "es7"],
    "allowJs": true,
    "outDir": "./dist/",
    "preserveSymlinks": true,
    "strict": true,
    "noImplicitThis": false,
    "moduleResolution": "node",
    "baseUrl": "./",
    "paths": {
      "sequelize-test-helpers": ["typings/sequelize-test-helpers"]
    },
    "typeRoots": ["node_modules/@types", "typings"],
    "types": ["node", "core-js"]
  },
  "include": ["src/**/*.ts", "typings"]
}
...