我在npm中使用JEST进行测试。下面是场景
我有一个TestScript.js文件
function someComplexFunction() {
console.log("some important message");
}
module.exports = someComplexFunction
在TestScript.test.js文件中测试这个函数
const someComplexFunction = require("./TestScript")
test('Console log should have been called', () => {
const logSpy = jest.spyOn(console, 'log');
someComplexFunction();
expect(logSpy).toHaveBeenCalledWith('some important message');
logSpy.mockRestore();
});
当我运行测试时,我失败了
npm test
应已调用控制台日志
expect(jest.fn()).toHaveBeenCalledWith(...expected)
Expected: "some important message"
Number of calls: 0
32 | someComplexFunction();
33 |
> 34 | expect(logSpy).toHaveBeenCalledWith('some important message');
| ^
35 |
36 | logSpy.mockRestore();
37 | });
at Object.toHaveBeenCalledWith (src/test/TestScript.test.js:34:17)
请让我知道我犯了什么错误,为什么嘲笑不起作用。
我试着改变spyOn功能,但仍然不工作,也尝试了警告,但仍然没有运气。
1条答案
按热度按时间63lcw9qa1#
你试过这个吗?here工作