React コンポーネントの開発にwebpackを使用しています。以下は、その単純なバージョンです。
'use strict';
require('./MyComponent.less');
var React = require('react');
var MyComponent = React.createClass({
render() {
return (
<div className="my-component">
Hello World
</div>
);
}
});
module.exports = MyComponent;
ここで、 jestを使用してこのコンポーネントをテストしたいと思います。ここに私の関連するビットがありますpackage.json
:
"scripts": {
"test": "jest"
},
"jest": {
"rootDir": ".",
"testDirectoryName": "tests",
"scriptPreprocessor": "<rootDir>/node_modules/babel-jest",
"unmockedModulePathPatterns": [
"react"
]
}
を実行するnpm test
と、次のエラーが表示されます。
SyntaxError: /Users/mishamoroshko/react-component/src/tests/MyComponent.js: /Users/mishamoroshko/react-component/src/MyComponent.js: /Users/mishamoroshko/react-component/src/MyComponent.less: Unexpectedトークン ILLEGAL
require('./MyComponent.less')
jest がテストを実行する前に、webpack を処理する必要があるようです。
jest-webpack のようなものを使用する必要があるのだろうか。はいの場合、複数scriptPreprocessor
の を指定する方法はありますか? (私はすでに使用していることに注意してくださいbabel-jest
)