Jest测试用例对Node.js控制器失败

时间:2020-04-04 06:48:05

标签: node.js jestjs

当我在节点js中声明一个控制器时,如下所示,所有测试用例都运行良好。

 module.exports = (req,res) => {
    //code here 
  }

我正在测试用例文件中访问以下控制器,如下所示:

    const controller = require('filename')
    controller(req,res);

但是,当我在节点js中声明相同的控制器时,如下所示,所有测试用例都失败了。

const getController = (req,res) => {
//Code here 
}
module.exports = { getController }

我正在测试用例文件中访问以下控制器,如下所示:

const {getController } = require('filename');
getController (req,res);

有人可以告诉我这里发生了什么吗?

1 个答案:

答案 0 :(得分:1)

由于语法错误,因此无法正常工作。

使用:

module.exports = { getController : getController }

并以两种方式使用它:

  1. import {getController} from 'filename';
  2. const getController = require('filename').getController

使用require时,您需要一个模块,而不是模块的功能。使用import时,就是从模块导入函数。

您可以阅读here来了解requireimport之间的区别