我正在尝试设置Jest环境Node.js。以下是在名为 的文件中定义的函数controllers/a.js:
function sum(a, b) {
return a + b;
}
module.exports = sum;
这是从tests.js文件中访问的:
const sum = require('../controllers/a');
test('adds 1 + 2 to equal 3', () => {
expect(sum(1, 2)).toBe(3);
});
这很好用:
PASS tests/tests.js
√ adds 1 + 2 to equal 3 (5 ms)
但是,如果我修改a.js如下:
function sum(a, b) {
return a + b;
}
exports.sum = sum;
然后我得到TypeError:
FAIL tests/tests.js
× adds 1 + 2 to equal 3 (3 ms)
● adds 1 + 2 to equal 3
TypeError: sum is not a function
2 |
3 | test('adds 1 + 2 to equal 3', () => {
> 4 | expect(sum(1, 2)).toBe(3);
| ^
5 | });
尝试了以下几种导出方式,均以TypeError
上述方式失败:
module.exports.sum = sum;
module.exports = { sum: sum };
exports = sum;
exports = { sum: sum };
我需要导出多个函数以在Jest
. Jest
如果没有module.exports
按预期识别,我该怎么做?
沧海一幻觉
人到中年有点甜
相关分类