TypeError: plugin.test не является функцией при использовании jest, энзима и response-16, машинопись
Я нахожусь в процессе обновления моего приложения реагировать на react-16
, но все мои тесты тормозят. Я обновил enzyme
, jest-enzyme
, react-dom
установил enzyme-adapter
создал setupTest.ts
энзимный файл, обновил мой jestconfig.js
файл, но я все еще получаю ошибку. Если у кого-то есть представление о том, что может пойти не так.
Никаких предупреждений о зависимостях (относящихся к реакции | тестам) при выполнении npm ls
Вот мой jestconfig
{
"moduleDirectories": [
"node_modules",
"src"
],
"moduleFileExtensions": [
"ts",
"tsx",
"js"
],
"moduleNameMapper": {
"\\.(css|scss)$": "identity-obj-proxy"
},
"transform": {
".(ts|tsx)": "<rootDir>/node_modules/ts-jest/preprocessor.js"
},
"testResultsProcessor": "<rootDir>/node_modules/ts-jest/coverageprocessor.js",
"snapshotSerializers": [
"enzyme-to-json"
],
"setupTestFrameworkScriptFile":"<rootDir>/config/setupTests.ts",
"coveragePathIgnorePatterns": ["node_modules", "__tests__"],
"testRegex": "__tests__/.*\\.test\\.(ts|tsx|js)$",
"collectCoverageFrom": ["src/**/*.{ts,tsx}"],
...rest of code
SRC /setupTests.ts
import 'raf/polyfill'; // <= this removes the requestAnimationFrame warning error
import * as Enzyme from 'enzyme';
import * as Adapter from 'enzyme-adapter-react-16';
Enzyme.configure({ adapter: new Adapter() });
1 ответ
Решение
Писал вопрос и осознал ошибку. Отсутствует следующее на jestconfig.json
"snapshotSerializers": [
"enzyme-to-json/serializer" // <= this part
],
..rest of code