首页 > 解决方案 > 尝试为 ReactJs 项目设置 Jest

问题描述

创建了一个 React 应用程序后,我接受了以下测试 (app.test.jsx):

import React from 'react';
import ReactDOM from 'react-dom';
import { MemoryRouter } from 'react-router-dom';
import App from './App';

it('renders without crashing', async () => {
  const div = document.createElement('div');
  ReactDOM.render(
    <MemoryRouter>
      <App />
    </MemoryRouter>, div);
  await new Promise(resolve => setTimeout(resolve, 1000));
});

我已经安装了 Jest,但是当我尝试运行测试时,我收到以下错误:

SyntaxError: C:\ .. \ClientApp\src\App.test.jsx: Unexpected token (9:4)

   7 |   const div = document.createElement('div');
   8 |   ReactDOM.render(
>  9 |     <MemoryRouter>
     |     ^
  10 |       <App />
  11 |     </MemoryRouter>, div);
  12 |   await new Promise(resolve => setTimeout(resolve, 1000));

  at Parser._raise (../../../../../../AppData/Roaming/npm/node_modules/jest-cli/node_modules/@babel/parser/src/parser/location.js:241:45)

我想它是相关的,但该目录src存在@babel/parser.

任何人都可以指出我可能出现的问题的正确方向(或者,如果它确实与 babel 解析器有关,我如何才能正确安装该库)?

编辑:

jest.config.js

module.exports = {
    verbose: true,
};

标签: reactjsjestjs

解决方案


推荐阅读