Selbst das einfachste Projekt, wie es in der Anleitung _Erste Schritte_ beschrieben ist, schlägt jetzt fehl.
Erstellen Sie das Beispielprojekt ( sum.js
und sum.spec.js
) und versuchen Sie dann, Jest auszuführen. Es schlägt mit Couldn't find preset "es2015" relative to directory "/Users/ianp/Projects"
fehl. Oder sehen Sie sich dieses Wesentliche an: https://gist.github.com/0e44151b16718ebc83bb25efb68a9395 .
In der Debug-Konfiguration (unten) kann ich sehen, dass usesBabelJest
auf true gesetzt wird, obwohl ich nicht sicher bin, warum dies die Basis sein sollte, da ich Babel in meinem Projekt nicht verwende. Ich habe versucht, usesBabelTest: false
zu package.json
hinzuzufügen, aber das hat keinen Unterschied gemacht. Ich kann auch sehen, dass preset
in der Konfiguration null zu sein scheint, was angesichts der Fehlermeldung seltsam erscheint 🤔
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
}
}
Das Preset muss irgendwo in Ihrem Baum von einem .babelrc
. Wenn es dort ist, verwendet Jest es derzeit automatisch.
Reparieren:
.babelrc
entfernenDoh! Es gab eine .babelrc
Datei in einem übergeordneten Verzeichnis, ich bin mir nicht sicher, wie sie dorthin gelangt ist 😖
Danke für den Tipp!
Hilfreichster Kommentar
Das Preset muss irgendwo in Ihrem Baum von einem
.babelrc
. Wenn es dort ist, verwendet Jest es derzeit automatisch.