使用 Jest 对某些 NodeJS 函数进行一些测试,但它不喜欢 import
语句,例如从“../util/database-controller”导入 DatabaseController
。
我做了一些阅读,人们建议安装 babel-jest
并更新我的配置(如下),但我没有任何运气。我错过了什么?据我了解,它不理解 import
语句,因为它是 es6
东西......
开 Jest 我的 package.json
的一部分:
"jest": {
"collectCoverageFrom": [
"src/**/*.{js,jsx}"
],
"resolver": "jest-pnp-resolver",
"setupFiles": [
"react-app-polyfill/jsdom"
],
"testMatch": [
"<rootDir>/**/__tests__/**/*.{js,jsx}",
"<rootDir>/**/?(*.)(spec|test).{js,jsx}"
],
"testEnvironment": "jsdom",
"testURL": "http://localhost",
"transform": {
"^.+\\.jsx?$": "babel-jest",
"^.+\\.css$": "<rootDir>/config/jest/cssTransform.js",
"^(?!.*\\.(js|jsx|css|json)$)": "<rootDir>/config/jest/fileTransform.js"
},
"transformIgnorePatterns": [
"[/\\\\]node_modules[/\\\\].+\\.(js|jsx)$",
"^.+\\.module\\.(css|sass|scss)$"
],
"moduleNameMapper": {
"^react-native$": "react-native-web",
"^.+\\.module\\.(css|sass|scss)$": "identity-obj-proxy"
},
"moduleFileExtensions": [
"web.js",
"js",
"json",
"web.jsx",
"jsx",
"node"
]
},
最佳答案
最近我发现我根本不需要 babel-jest
,并且可以简单地使用 @babel/preset-env
,以及以下 .babelrc
:
{
"env": {
"test": {
"presets": [["@babel/preset-env"]]
}
}
}
关于javascript - 开 Jest - 语法错误 : Unexpected identifier,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55108290/