如何修复“错误:找不到模块”超级测试”

时间:2019-03-29 22:37:08

标签: node.js supertest

我是nodejs的新手。我有一个nodejs应用程序,而我只是想运行该应用程序包含的测试。所以我尝试在使用npm install安装所有软件包后运行npm test命令。但是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文件夹。那会是个问题吗?我们该如何解决?

这是使用超级测试的文件

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 个答案:

答案 0 :(得分:1)

看来supertest不在您的package.json中。因此,如果您运行npm install,它将不会安装supertest

只需运行npm install supertest即可安装supertest,或运行npm install --save supertest并在package.json中添加依赖项,以便下次运行npm install时会安装也supertest:)