Как исправить ‘ошибку: не удается найти модуль ‘supertest»

#node.js #supertest

#node.js #супертест

Вопрос:

Я новичок в nodejs. У меня есть одно приложение nodejs, и я просто пытался запустить тесты, содержащиеся в этом приложении. Итак, я попытался запустить команду npm test после установки всех пакетов с помощью npm install. Но тест npm всегда выдает ошибку ниже

 internal/modules/cjs/loader.js:657
    throw err;
    ^

Error: Cannot find module 'supertest'
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:655:15)
    at Function.Module._load (internal/modules/cjs/loader.js:580:25)
    at Module.require (internal/modules/cjs/loader.js:711:19)
    at require (internal/modules/cjs/helpers.js:14:16)
  

Я попытался удалить и установить supertest, но это не помогло. Я вижу, что внутри supertest нет папки node_modules. Будет ли это проблемой? Как нам это исправить?

Вот файл, в котором используется supertest

 var fs = require('fs')
var request = require('supertest')

var config = require('./config').getConfig()
var url = config.url

var caCert
if (config.caCertFile) {
  caCert = fs.readFileSync(config.caCertFile)
}

var preparedRequest = function () {
  return caCert ? request.agent(url, { ca: caCert }) : request(url)
}

module.exports = preparedRequest
  

Комментарии:

1. Вы пробовали npm install supertest ?

Ответ №1:

Похоже, что supertest этого нет в вашем package.json depencendies. Поэтому, если вы запустите npm install , он не будет установлен supertest .

Просто запустите npm install supertest для установки supertest или npm install --save supertest для его установки и добавьте зависимость в свой package.json, чтобы при следующем запуске npm install он тоже был установлен supertest 🙂