gpt4 book ai didi

unit-testing - Jest globalSetup 选项不起作用

转载 作者:行者123 更新时间:2023-12-03 09:26:31 25 4
gpt4 key购买 nike

我正在尝试使一个名为 loadFixtures 的函数可用于所有 Jest 测试。

我在 package.json 中的 jest 配置对象中有以下行:

"globalSetup": "<rootDir>/src/test/js/config/setup-globals.js"

setup-globals.js 包含:
module.exports = function() {
function loadFixtures(filename) {
console.info('loadFixtures is working');
}
}

在我的测试中,例如:
beforeEach(() => {
loadFixtures('tooltip-fixture.html');
});

但是,当我运行 Jest 时,每次测试都会得到以下信息:
ReferenceError: loadFixtures is not defined

我验证了 setup-globals.js 文件确实在测试执行之前被 Jest 找到并加载了。

任何人都可以帮助确定我在这里出错的地方吗?我花了几乎一整天的时间试图在没有运气的情况下进行调试。

最佳答案

您应该使用setupFiles而不是globalSetup

// jest config
"setupFiles": [
"<rootDir>/src/test/js/config/setup-globals.js"
]

然后 src/test/js/config/setup-globals.js :
global.loadFixtures(filename) {
console.info('loadFixtures is working');
}

引用资料: https://medium.com/@justintulk/how-to-mock-an-external-library-in-jest-140ac7b210c2

关于unit-testing - Jest globalSetup 选项不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49326108/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com