单元测试语法错误,反应,摩卡
Unit Testing Syntax error, react, mocha
我正在尝试使用酶、mocha 和 chai 为我的 React 应用设置一些测试。 (我也在使用 webpack)。我为我的浏览器内测试设置了 Karma,但我想 运行 这些测试只用节点。
我目前在尝试 运行 测试时遇到语法错误。我不确定如何解决它。
更新:我正在 运行使用 es6 进行测试 mocha 'components/**/*.test.js' --recursive --compilers js:babel-register
我得到的错误是:
8 | describe('<button />', () => {
9 | it('renders something', () => {
> 10 | const wrapper = shallow(<button />)
11 | expect(wrapper).to.be.present
12 | })
您需要设置 Babel 才能处理 JSX 语法。
有两种选择:将配置添加到您的 package.json
,或者创建一个包含配置的名为 .babelrc
的文件。
首先,安装babel-preset-react
:
$ npm i babel-preset-react --save
接下来,将以下内容添加到您的 package.json
:
"babel": {
"presets": [ "react" ]
}
(或添加该对象,不带 "babel" 键,到 .babelrc
)
您可能想要使用的另一个预设是 babel-preset-es2015
,您可以以类似的方式添加它(只需将其添加到 presets
数组)。
我正在尝试使用酶、mocha 和 chai 为我的 React 应用设置一些测试。 (我也在使用 webpack)。我为我的浏览器内测试设置了 Karma,但我想 运行 这些测试只用节点。
我目前在尝试 运行 测试时遇到语法错误。我不确定如何解决它。
更新:我正在 运行使用 es6 进行测试 mocha 'components/**/*.test.js' --recursive --compilers js:babel-register
我得到的错误是:
8 | describe('<button />', () => {
9 | it('renders something', () => {
> 10 | const wrapper = shallow(<button />)
11 | expect(wrapper).to.be.present
12 | })
您需要设置 Babel 才能处理 JSX 语法。
有两种选择:将配置添加到您的 package.json
,或者创建一个包含配置的名为 .babelrc
的文件。
首先,安装babel-preset-react
:
$ npm i babel-preset-react --save
接下来,将以下内容添加到您的 package.json
:
"babel": {
"presets": [ "react" ]
}
(或添加该对象,不带 "babel" 键,到 .babelrc
)
您可能想要使用的另一个预设是 babel-preset-es2015
,您可以以类似的方式添加它(只需将其添加到 presets
数组)。