Mocha /酶无法识别jsx

问题描述 投票:0回答:1

我的目标是测试以jsx编写的reactjs代码,并以Mocha作为测试运行程序,酶和柴。目前,我收到unexpectet token错误。我已经尝试了mocha-will-not-recognise-jsx内部的解决方案,但没有解决我的错误。

Package.json

{
    "scripts": {
        "test": "mocha --recursive application/**/*.spec.js* --compilers js:babel-register",
    },
    [
    ...
    ],
    "dependencies": {
        "react": "^15.6.1",
        "react-dom": "^15.6.1"
    },
    "devDependencies": {
        "babel-core": "^6.26.0",
        "babel-loader": "^7.1.2",
        "babel-preset-env": "^1.6.0",
        "babel-preset-react": "^6.24.1",
        "babel-register": "^6.26.0",
        "chai": "^4.1.2",
        "enzyme": "^2.9.1",
        "html-webpack-plugin": "^2.30.1",
        "mocha": "^3.5.0",
        "standard": "^10.0.3",
        "webpack": "^3.5.5",
        "webpack-dev-server": "^2.7.1"
    }
}

Webpack模块

module: {
    loaders: [{
        test: /\.jsx?$/,
        exclude: /node_modules/,
        loader: 'babel-loader',
        query: {
            presets: ['react', 'env']
        }
    }]
}

错误消息

D:\Development\game-of-life\node_modules\babel-core\lib\transformation\file\index.js:59
0
    throw err;
    ^

SyntaxError: D:/Development/game-of-life/application/src/components/app/App.spec.jsx: U
nexpected token (8:28)
   6 | describe('App', () => {
   7 |   it('renders "<div>Application is running</div>"', () => {
>  8 |     const wrapper = shallow(<App />)
     |                             ^
   9 |     expect(wrapper.contains(<div>Application is running</div>)).to.be.eql(true)
  10 |   })
  11 | })

我是否忘记安装软件包或软件包的较新版本与软件包的较早版本有所不同,因为我已经以相等的依赖性实现了反应酶项目。

reactjs mocha jsx babel enzyme
1个回答
0
投票
© www.soinside.com 2019 - 2024. All rights reserved.