使用Jest,React和Webpack处理全局导入

时间:2017-06-28 22:51:16

标签: javascript reactjs testing webpack jest

我最近开始研究一个已经成熟的项目,我正在集成Jest测试框架。该项目使用React和Webpack。在webpack配置中,团队使用->first()来提供React,lodash和类名(不是我本来会做的,但不管怎样)。

我遇到的问题是,文件顶部的大多数React类都包含webpack.ProvidePlugin之类的东西,因为webpack基本配置而工作正常。但是,当我运行相应的测试文件时,我只是得到React.Component,除非我明确要求React。

有一个React is not defined文件需要基本的webpack配置,但是我似乎无法得到它以便我可以在没有明确地在每个文件的顶部包含webpack.test.config的情况下运行测试。我不想在每个文件中手动导入React,任何人都有任何建议做什么?

2 个答案:

答案 0 :(得分:1)

我认为在这种情况下使用全局变量是一种反模式。我只是删除全局变量并在每个文件中包含react

答案 1 :(得分:0)

您可以尝试使用jest的resolver,当您到达form导入时,返回路径进行反应。或者你可以在那里使用jest的setupFilereact