StencilJs Jest:测试套件无法与JQuery window.setTimeout一起运行

时间:2019-09-03 16:30:14

标签: javascript jquery typescript jestjs stenciljs

我正在使用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 = $;

任何帮助都是非常重要的。预先感谢。

0 个答案:

没有答案