2017-04-09 13 views
1

私は酵素/モカと反応成分をテストしようとしていて、それをセットアップする方法についてちょっと混乱しています。ベベルを使ってモカと反応成分を試験する

ここでテスト

import React from 'react'; 
import { expect } from 'chai'; 
import { shallow, mount, render } from 'enzyme'; 
import Index from '../../public/js/components/polls/index' 

describe("INDEX", function() { 
    it("contains a div", function() { 
    expect(shallow(<Index />).contains(<div id="index">)).to.equal(true); 
    }); 

}); 

は、ここで私がテストを開始するために実行するコマンドです。

SyntaxError: /my_app/public/js/components/polls/index.js: Unexpected token (47:10) 
    45 | eachPoll(poll, i) { 
    46 |  return(
> 47 |   <Link to={"/poll/" + poll._id} key={poll._id}> 
    |   ^
    48 |    <div className="btn btn-info btn-block"> 
    49 |    {poll.name} 
    50 |    </div> 

問題:

env NODE_ENV=test mocha --compilers js:babel-register --require babel-polyfill --reporter spec --timeout 5000 --recursive 

そして、ここでは、私が取得エラーですJSXと思われるが、私はこのコンポーネントをwebpackでうまく組み立てることができる。私は間違って何をしていますか?

+0

は、ファイルの拡張子 '.js'または' .jsx'のですか? –

答えて

3

あなたはバベルてテストを実行するにはバベル登録オプションとモカを実行する必要があります。

--compilers js:node_modules/babel-register 

あなたのルートディレクトリに.babelrcファイルがあることを確認してください。少なくともreactのプリセットが含まれている必要があります。 .babelrcため

例:

{ 
    "presets": [ 
     "es2015", 
     "react" 
    ] 
} 
+0

ありがとう!コマンドを 'env NODE_ENV = test mocha --compilers js:node_modules/babel-register --babel-polyfill-reporter spec-timeout 5000 --recursive'に変更し、同じエラーを受けました。 – stoebelj

+0

' .babelrc'ファイル? –

+0

はい '{ "プリセット": [ "es2015"]} ' – stoebelj

関連する問題