【问题标题】:Testing react app with enzyme , change rootDir使用酶测试反应应用程序,更改 rootDir
【发布时间】:2018-11-20 10:17:20
【问题描述】:

我正在开发一个 react 项目来测试我的 react 应用程序。 例如,我的根目录是 /home 我的反应应用程序位于 /home/MyApp/appModules/src/ 在我所有实现类的 *.js 文件中 我的反应测试应用程序位于 /home/MyApp.tst/testModules/ 在 testModules/ 目录中,有 package.json 和 /src/ 目录,tests 目录,在我所有的 *.test.js [测试文件]

我正在尝试使用 package.json 的配置更改根目录

"jest": {
    "rootDir": [
      "./../../"
    ]
  },

但是当我运行命令 npm run coverage 时出现错误消息

react-scripts test --env=jsdom --coverage


Out of the box, Create React App only supports overriding these Jest options:

  • collectCoverageFrom
  • coverageReporters
  • coverageThreshold
  • globalSetup
  • globalTeardown
  • resetMocks
  • resetModules
  • snapshotSerializers
  • watchPathIgnorePatterns.

These options in your package.json Jest configuration are not currently supported by Create React App:

  • rootDir

如果您希望覆盖其他 Jest 选项,您需要退出默认设置。您可以通过运行 npm runeject 来做到这一点,但请记住这是一种单向操作。你也可以向 Create React App 提出问题,讨论支持更多开箱即用的选项。

如果我用 npm runeject 弹出项目,我将无法再运行 es6 javascript 测试文件...

你有什么想法可以帮助我吗? 谢谢

【问题讨论】:

    标签: javascript reactjs enzyme


    【解决方案1】:

    名称已经暗示了答案:用户collectCoverageFrom 指定您的目录/home/MyApp.tst/testModules/,如果您想保留此文件夹结构。

    或者:

    将您的测试和package.json 移动到src 中,它应该会自动找到它们

    【讨论】:

      猜你喜欢
      • 2019-01-30
      • 2017-08-16
      • 2021-02-22
      • 2020-08-22
      • 2020-06-01
      • 1970-01-01
      • 2017-09-24
      • 1970-01-01
      • 2017-05-20
      相关资源
      最近更新 更多