我是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文件夹。那会是个问题吗?我们该如何解决?

这是使用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

最佳答案

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

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

关于node.js - 如何修复“错误:找不到模块” super 测试”,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55426299/

10-10 04:07