J'ai un problème pour appeler la fonction enzym's
mount
. Ça dit:
Enzyme Internal Error: Enzyme expects an adapter to be configured, but found none. To
configure an adapter, you should call `Enzyme.configure({ adapter: new Adapter() })`
before using any of Enzyme's top level APIs, where `Adapter` is the adapter
corresponding to the library currently being tested. For example:
import Adapter from 'enzyme-adapter-react-15';
Mon fichier setupTests.js
ressemble à ceci:
import { configure } from 'enzyme';
import Adapter from 'enzyme-adapter-react-16';
configure({ adapter: new Adapter() });
et dans package.json:
"jest": {
"testEnvironment": "jest-environment-jsdom-global",
"setupFiles": [
"<rootDir>/jestConfigs/setupTests.js"
],
"moduleNameMapper": {
"^.+\\.(css|scss)$": "<rootDir>/jestConfigs/CSSStub.js",
"^.+\\.(jpg|jpeg|png|gif|eot|otf|webp|svg|ttf|woff|woff2|mp4|webm|wav|mp3|m4a|aac|oga)$": "<rootDir>/jestConfigs/fileStub.js",
"/common-mms/(.+)": "<rootDir>/App/common-mms/$1"
}
},
Mais le problème est le suivant: j'utilise react-16 et enzyme-adapter-react-15 n'a aucune importance pour moi. Même si j'ajoute enzyme-adapter-react-15 juste au cas où - l'erreur persiste.
UPDATE: Si je copie le contenu de setupTests.js au début de chaque fichier de test - tout fonctionne correctement! Et si je mets console.log(1)
dans setupTests - il s’imprime réellement! Cela signifie que le fichier est réellement incrusté lors de l'initialisation plaisante.
Vous devez importer setupTests.js dans votre fichier dans lequel vous écrivez vos scénarios de test. Ceci a déjà été répondu dans ce link