Чтобы сказать Mocha запускать тесты в другой папке вместо запуска в папке по умолчанию ./test
, вы можете просто изменить команду и выполнить
mocha "./spec/**/*.js"
или, если Ваш bash не поддерживает **
Запуск от имени
mocha --recursive "./spec/*.js"
Это означает, что вы можете легко изменить сценарий запуска VSCode на:
{
"type": "node",
"request": "launch",
"name": "Mocha Tests",
"program": "${workspaceFolder}/node_modules/mocha/bin/_mocha",
"args": [
"./<YOUR_FOLDER_HERE>/**/*.js",
"--ui bdd",
"--timeout 15000",
"--sort",
"--colors",
"--bail",
"-R spec",
"--recursive",
"--exit",
],
"internalConsoleOptions": "openOnSessionStart"
}
не забудьте изменить <YOUR_FOLDER_HERE>
с именем папки, в которой у вас есть тесты
если у вас есть тесты в вашем коде, но они названы, например, routes.spec.js
, вы можете просто сказать ./**/*.spec.js
и найти каждый файл в вашем проекте, который заканчивается .spec.js
Пример выше будет таким же, как файл mocha.opts
с
# mocha options
--ui bdd
--timeout 15000
--sort
--colors
--bail
-R spec
--require test/prepare
--recursive
--exit
, просто играйте с аргументами, пока вы не запустите его как вам нравится ...
Кстати, если вы используете VSCode , я настоятельно рекомендую расширение Mocha (их несколько), так как вам не нужно запустите тесты в качестве команды запуска и у вас будут все тесты на боковой панели с Возможность отладки каждого и добавления точек останова к вашему коду
, а также в ваших тестах
PS этот проект находится в GitHub , так что вы можете увидеть, как все работает, включая покрытие кода, если вы посмотрите, как это работает:)