您好,这是我第一次使用Jest。我正在尝试将其配置为与酶和webpack一起使用。我将此添加到package.json文件中进行测试:
"scripts": {
"test": "jest",
"test:watch": "jest --watch",
}
开玩笑的配置:
"jest": {
"setupTestFrameworkScriptFile": "<rootDir>_tests_/setup/setupEnzyme.js",
"testPathIgnorePatterns": [
"<rootDir>/_tests_/setup/"
],
"verbose": true
}
这是我的setupEnzyme文件:
import Enzyme from 'enzyme';
import Adapter from 'enzyme-adapter-react-16';
Enzyme.configure({ adapter: new Adapter() });
但是我收到错误Module <rootDir>_tests_/setup/setupEnzyme.js in the setupTestFrameworkScriptFile option was not found.
答案 0 :(得分:1)
就像这样,我在package.json中提到了
"jest": {
"snapshotSerializers": ["enzyme-to-json/serializer"],
"moduleFileExtensions": ["js","jsx" ],
"setupTestFrameworkScriptFile": "<rootDir>src/setupTests.js",
"moduleNameMapper": {"^.+\\.(css|scss)$": "identity-obj-proxy"
},
"verbose": true,
"transform": {"^.+\\.(js|jsx)$": "babel-jest",
"^.+\\.css$": "jest-css",
"^(?!.*\\.(js|jsx|css|json)$)": "jest-file"
},
"testURL": "http://localhost"
},
答案 1 :(得分:1)
这是我的项目中使用笑话的package.json
。我在同一级别上有一个src
和test
文件夹。与您不同,我在setupFiles
的{{1}}对象中使用jest
数组。
package.json
这里是{
"name": "app",
"version": "1.0.0",
"description": "App",
"main": "index.js",
"scripts": {
"start": "webpack-dev-server --colors --mode=development",
"build": "webpack --mode=production",
"test": "jest",
"test:watch": "jest --watch",
"test:coverage": "jest --coverage"
},
"jest": {
"setupFiles": [
"./test/jestsetup.js"
],
"snapshotSerializers": [
"enzyme-to-json/serializer"
],
"moduleNameMapper": {
"\\.(css|less)$": "identity-obj-proxy"
}
},
"keywords": [
"react"
],
"license": "MIT",
"devDependencies": {
"babel-jest": "^23.2.0",
"babel-loader": "^7.1.3",
"babel-preset-env": "^1.6.1",
"babel-preset-react": "^6.24.1",
"babel-preset-stage-2": "^6.24.1",
"css-loader": "^0.28.11",
"enzyme": "^3.3.0",
"enzyme-adapter-react-16": "^1.1.1",
"enzyme-to-json": "^3.3.4",
"identity-obj-proxy": "^3.0.0",
"jest": "^23.2.0",
"react-test-renderer": "^16.4.1",
"style-loader": "^0.21.0",
"webpack": "^4.6.0",
"webpack-cli": "^2.0.15",
"webpack-dev-server": "^3.1.3"
},
"dependencies": {
"react": "^16.3.2",
"react-dom": "^16.3.2"
}
}
jestsetup.js