确保在 Jest transformIgnorePatterns 中也包含该文件
Posted
技术标签:
【中文标题】确保在 Jest transformIgnorePatterns 中也包含该文件【英文标题】:make sure to include the file in Jest's transformIgnorePatterns as wel 【发布时间】:2020-01-01 04:32:40 【问题描述】:我正在尝试在反应中进行玩笑/酶测试
我有这个测试:
import React from 'react';
import shallow from 'enzyme';
import mount from 'enzyme'
import WorkOutForm from './workOutForm';
describe('WorkOutForm', () =>
it('should start a new workoutForm with empty state', () =>
const component = mount(<WorkOutForm/>)
expect(component).toMatchSnapshot();
);
)
但是当我执行npm run test
时,我会收到:
src/workout/workOut.test.js ● 测试套件运行失败
babel-jest: Babel ignores src/workout/workOutForm.jsx - make sure to include the file in Jest's transformIgnorePatterns as well.
我尝试在 package.json 中添加这个文件:
"jest":
"transformIgnorePatterns": [
"src/workout/workOutForm.jsx"
]
但我收到了同样的错误。 我必须把这个放在哪里?
【问题讨论】:
【参考方案1】:我必须把这个放在哪里?
您应该不忽略 jsx 源文件。您需要做的是使用 babel 将您的 jsx 转换为 js。
您需要使用babel-preset-react。这将自动为转换添加@babel/plugin-transform-react-jsx
。
然后把它放到你的.babelrc
"presets": ["@babel/preset-react"]
【讨论】:
【参考方案2】:我已经有这个错误,我修复了更改代码:
"ignore": [
"./test",
"./src/assets",
"./src/stories",
"./src/.storybook"
]
到这里:
"ignore": [
"./src/assets",
"./src/stories",
"./src/.storybook"
]
我从 .babelrc ignore prop 中删除了我的测试文件夹,它对我有用!
【讨论】:
以上是关于确保在 Jest transformIgnorePatterns 中也包含该文件的主要内容,如果未能解决你的问题,请参考以下文章
Jest + Vue - SyntaxError: Unexpected token <