【问题标题】:Do mock files get bundled in the build?模拟文件是否捆绑在构建中?
【发布时间】:2019-04-20 11:29:51
【问题描述】:

我正在使用create-react-app

为了测试 React 组件,我正在使用 Jest 并使用该模拟文件。

我把测试文件和附着的mock文件放在组件旁边,像这样的文件结构:

components
- account
-- Account.js
-- Account.test.js
-- __mocks.js
- another-feature
....

当我运行yarn build 时,mock 文件也会被捆绑吗?

【问题讨论】:

  • 不,直到您在组件代码中明确import '__mocks.js'
  • 好的,谢谢!

标签: reactjs webpack mocking jestjs create-react-app


【解决方案1】:

Yarn(或 npm)依赖于您指定的入口点。然后 webpack 从入口点开始访问每个 import。然后发生摇树。最后,所有收集到的东西都打包在一起。

Jest 以不同的方式工作:它按文件名模式搜索测试、模拟和快照。然后每个测试文件在运行时都成为 webpack 的入口点。

因此,这些是 2 个独立的流程和特殊文件/目录(如 __mocks__)或仅测试文件所需的文件(如您的情况下的 __mocks.js)不会被捆绑。

【讨论】:

    猜你喜欢
    • 2018-05-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-01-12
    • 2016-09-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多