使用React进行JEST测试

时间:2017-08-28 18:06:33

标签: reactjs jestjs babel

我使用create-react-app样板构建了一个小型React App。 我试图使用JEST(版本20.0.4)来实现一些单元测试 但我遇到了运行测试的问题。 我的babel版本是6.26.0。

这是我的测试脚本:

import React from 'react';
import ReactDOM from 'react-dom';
import App from '../App';

it('renders without crashing', () => {
 const div = document.createElement('div');
 ReactDOM.render(<App />, div);
});

这是我的Package.json:

"jest": {
"moduleNameMapper": {
  "\\.(css|less)$": "<rootDir>/__mocks__/styleMock.js"
},
"transform": {
  "\\.(jpg|jpeg|png|gif|eot|otf|webp|svg|ttf|woff|woff2|mp4|webm|wav|mp3|m4a|aac|oga)$": "<rootDir>/fileTransformer.js"
}}

这是我运行测试时收到的错误消息:

 FAIL  src/test/App.test.jsx
 ● Test suite failed to run

/Users/Bluna/lunathecat-projects/reddit-react-app/src/test/App.test.jsx:1
({"Object.<anonymous>":function(module,exports,require,__dirname,__filename,global,jest){import React from 'react';
                                                                                         ^^^^^^

SyntaxError: Unexpected token import

  at ScriptTransformer._transformAndBuildScript (node_modules/jest-runtime/build/ScriptTransformer.js:289:17)
      at <anonymous>

这是我第一次使用JEST,而且我不确定究竟发生了什么。我做错了什么?

1 个答案:

答案 0 :(得分:0)

您需要使用jest-babel转换文件。