mocha не распознается как внутренняя или внешняя команда - mocha не устанавливается автоматически с помощью supertest - PullRequest
0 голосов
/ 06 декабря 2018

Мне нужно протестировать мой API для отдыха, написанный на NodeJS.Для этого мне нужно использовать пакет supertest npm.Я следовал этой статье учебника для реализации функциональности модульного теста.

Теперь в этой статье упоминается, что mocha уже включен в саму supertest, поэтому нет необходимостиустановить его отдельно.Итак, я только устанавливаю supertest, используя - npm install --save-dev supertest.

Но, когда я добавляю эту строку в мой package.json - "test": "mocha" и запускаю npm test, выдается ошибка, говорящая 'mocha' is not recognized as an internal or external command,Мне нужно запустить npm install --save-dev mocha, чтобы запустить его успешно.Но почему я должен включать mocha отдельно, и если это так, как это должно работать, почему это не упоминается в этой статье или на домашней странице npm supertest?

1 Ответ

0 голосов
/ 06 декабря 2018

Я зашел на Supertest страницу npmjs и проверил зависимости.Мокка указана как зависимость разработчика.это означает, что Mocha использовался при создании супертеста, но не обязателен для функционирования супертеста.Когда я работаю над проектом Node.js, я устанавливаю определенные пакеты как зависимости dev.Это могут быть пакеты для тестирования (мокко) или линтинга (стандарт).Это означает, что при развертывании проекта эти пакеты не будут работать.

Кроме того, вы можете использовать команду npm list, чтобы увидеть, какие модули установлены.Я только что установил supertest и запустил список npm.Это структура супер-теста:

enter image description here Как вы можете видеть, Мокко нет в списке

Далее, прогон npm ls mocha и вывод: $ npm ls mocha nodetest@1.0.0 E:\Nodetest -- (empty)

и когда я запускаю npm ls supertest, вывод будет: $ npm ls supertest nodetest@1.0.0 E:\Nodetest -- supertest@3.3.0

Почему в статье говорится, что мокко доступно?может быть, в более ранней версии supertest она была включена как зависимость

...