Я использую Angular CLI и VS-код, но ни одна из моих точек останова в моих спецификационных файлах, кажется, не получает удар при запуске ng test?
Мне нужно сделать некоторые настройки?
Я использую Angular CLI и VS-код, но ни одна из моих точек останова в моих спецификационных файлах, кажется, не получает удар при запуске ng test?
Мне нужно сделать некоторые настройки?
Остальные ответы - полностью правильные ответы, но, пользуясь Angular около 18 месяцев, я стараюсь делать это в браузере - инструменты Chrome!
Запустите ng test, затем f12 и найдите файл spec через контекст веб-пакета. Добавьте точку останова (ов) и обновите, и она достигнет указанных точек останова. Согласно скриншоту
В новой версии VSCode (1.14.0) они следуют за этим recipe:
Вы можете полностью отлаживать приложение Angular (включая модульные тесты), рецепт прост.
Это то, что у меня работало с Angular CLI 1.0. * И Chrome на Windows 7.
В корневой директории вашего проекта откройте karma.conf.js
. Сразу после singleRun: false
добавление ,
за которым следует этот раздел:
customLaunchers: {
ChromeDebug: {
base: 'Chrome',
flags: [ '--remote-debugging-port=9333' ]
}
}
Добавьте конфигурацию в .vscode/launch.json
:
{
"type": "chrome",
"request": "attach",
"name": "Unit tests",
"address": "localhost",
"port": 9333,
"sourceMaps": true,
"webRoot": "${workspaceRoot}"
},
Запустите ng test --browsers ChromeDebug
Дождитесь запуска браузера Chrome. Вы увидите что-то подобное в командной строке:
01 06 2017 16:07:29.276:INFO [launcher]: Launching browser ChromeDebug with unlimited concurrency
Установите .spec.ts
останова в одном из ваших файлов .spec.ts
.
В Visual Studio Code выберите конфигурацию отладочных Unit tests
модулей и нажмите F5 (кнопка "Начать отладку").
Нажмите Shift+Ctrl+F5
или обновите окно Chrome, чтобы повторно запустить тесты и достичь точки останова.
Вы также можете изменить свой package.json и добавить новый скрипт:
"test-debug": "ng test --browsers ChromeDebug",
Тогда в следующий раз, когда вы захотите запустить ng test
с отладкой, просто запустите:
npm run test-debug
Рекомендации:
Просто чтобы добавить к другим ответам:
ng test
.ng test
из выпадающего списка.Вы можете просто добавить "отладчик", где вы хотите отладить и запустить
ng test
Когда откроется браузер Chrome, включите инструменты разработчика, и он остановится на вашем "отладчике".