Mesmo o projeto mais simples, conforme descrito no guia _Primeiros passos_ agora falha.
Crie o projeto de amostra ( sum.js
e sum.spec.js
) e tente executar Jest, ele falha com Couldn't find preset "es2015" relative to directory "/Users/ianp/Projects"
. Ou verifique esta essência: https://gist.github.com/0e44151b16718ebc83bb25efb68a9395 .
Na configuração de depuração (abaixo), posso ver que está definindo usesBabelJest
como verdadeiro, embora não tenha certeza de por que essa deve ser a base, já que não estou usando o Babel no meu projeto. Eu tentei adicionar usesBabelTest: false
a package.json
mas não fez diferença. Também posso ver que preset
parece nulo na configuração, o que parece estranho dada a mensagem de erro 🤔
jest version = 16.0.0
test framework = jasmine2
config = {
"rootDir": "/Users/ianp/Projects/0e44151b16718ebc83bb25efb68a9395",
"name": "-Users-ianp-Projects-0e44151b16718ebc83bb25efb68a9395",
"setupFiles": [],
"testRunner": "/Users/ianp/Projects/0e44151b16718ebc83bb25efb68a9395/node_modules/jest-jasmine2/build/index.js",
"scriptPreprocessor": "/Users/ianp/Projects/0e44151b16718ebc83bb25efb68a9395/node_modules/babel-jest/build/index.js",
"usesBabelJest": true,
"automock": false,
"bail": false,
"browser": false,
"cacheDirectory": "/var/folders/5p/qfkdcjcj343gnxdn0cy8_6l40000gn/T/jest",
"clearMocks": false,
"coveragePathIgnorePatterns": [
"/node_modules/"
],
"coverageReporters": [
"json",
"text",
"lcov",
"clover"
],
"globals": {},
"haste": {
"providesModuleNodeModules": []
},
"mocksPattern": "__mocks__",
"moduleDirectories": [
"node_modules"
],
"moduleFileExtensions": [
"js",
"json",
"jsx",
"node"
],
"moduleNameMapper": {},
"modulePathIgnorePatterns": [],
"noStackTrace": false,
"notify": false,
"preset": null,
"preprocessorIgnorePatterns": [
"/node_modules/"
],
"resetModules": false,
"testEnvironment": "jest-environment-jsdom",
"testPathDirs": [
"/Users/ianp/Projects/0e44151b16718ebc83bb25efb68a9395"
],
"testPathIgnorePatterns": [
"/node_modules/"
],
"testRegex": "(/__tests__/.*|\\.(test|spec))\\.jsx?$",
"testURL": "about:blank",
"timers": "real",
"useStderr": false,
"verbose": null,
"watch": false,
"cache": true,
"watchman": true,
"testcheckOptions": {
"times": 100,
"maxSize": 200
}
}
A predefinição deve vir de um .babelrc
em algum lugar da sua árvore. Se estiver lá, Jest o usará automaticamente.
Consertar:
.babelrc
Doh! havia um arquivo .babelrc
em um diretório pai, não tenho certeza de como ele foi parar lá 😖
Obrigado pela dica!
Comentários muito úteis
A predefinição deve vir de um
.babelrc
em algum lugar da sua árvore. Se estiver lá, Jest o usará automaticamente.