我正在使用Jest为组件编写StencilJs Spec
测试。测试失败,并显示以下错误
测试套件无法运行
TypeError:window.setTimeout不是函数 在node_modules / jquery / dist / jquery.js:3922:9 在node_modules / jquery / dist / jquery.js:28:4 在对象。 (node_modules / jquery / dist / jquery.js:40:4)
Package.json具有:
"jest": {
"setupFiles": [
"./setup-jest.js"
],
"verbose": true,
"testEnvironment": "jsdom",
"globals": {
"global.window": "window"
},
"moduleFileExtensions": [
"ts",
"tsx",
"js"
],
"transform": {
"\\.(ts|tsx)$": "<rootDir>/node_modules/ts-jest/preprocessor.js"
},
"testRegex": "/__tests__/.*\\.(ts|tsx|js)$",
"collectCoverageFrom": [
"src/js/helpers/preparePayload.js",
"src/js/components-ni",
"!**/node_modules/**",
"!**/dist/**"
],
"coverageThreshold": {
"global": {
"statements": 50,
"branches": 50,
"functions": 50,
"lines": 75
}
}
我已经按如下所示设置了package.json
和setup.config
在package.json中:
"jest": {"setupFiles": ["./source/setup-jest.js"] },
在source / setup-jest.js中
import $ from 'jquery'; global.$ = global.jQuery = $;
任何帮助都是非常重要的。预先感谢。