创建React App无法找到测试

时间:2018-04-01 20:37:58

标签: regex reactjs testing jest create-react-app

我最近使用create-react-app开始了一个新项目。我将App.test.js/src文件夹外部移动到根级/tests文件夹中,因此我的文件夹结构现在看起来像这样:

> node_modules
> public
> src
   ...
   App.js
> tests
   App.test.js
...

这是整个App.test.js文件:

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

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

因此,当我尝试npm run test时,不会执行任何测试。它说没有测试可以找到。如何让create-react-app将新/tests文件夹识别为所有测试的新位置并运行它们?

1 个答案:

答案 0 :(得分:3)

来自create-react-app docs:

  

文件名约定   Jest将使用以下任何流行的命名约定来查找测试文件:

     

__tests__文件夹中带有.js后缀的文件。带有.test.js的文件   后缀。带有.spec.js后缀的文件。 .test.js / .spec.js文件(或   __tests__文件夹)可以位于src顶部的任何深度   级别文件夹。

     

我们建议将测试文件(或__tests__文件夹)放在旁边   他们正在测试的代码,以便相对导入显得更短。对于   例如,如果App.test.js和App.js在同一个文件夹中,那么测试   只需要import App from './App'而不是长的相对路径。   主机托管还有助于在大型项目中更快地找到测试。

希望它可以帮到你