繁体   English   中英

将 ts-jest 与 create-react-app 一起使用

[英]Using ts-jest with create-react-app

当使用create-react-appreact-scripts-ts来使用 TypeScript 时,使用--coverage标志运行测试会导致不正确的覆盖率报告。 有没有办法集成 ts-jest 以便覆盖报告准确?

以下是我在package.json开玩笑配置:

"jest": {
    "transform": {
      "^.+\\.tsx?$": "ts-jest"
    },
    "testRegex": "(/__tests__/.*|(\\.|/)(test|spec))\\.(jsx?|tsx?)$",
    "moduleFileExtensions": [
      "ts",
      "tsx",
      "js",
      "jsx",
      "json",
      "node"
    ],
    "mapCoverage": true,
    "coverageThreshold": {
      "global": {
        "branches": 100,
        "functions": 100,
        "lines": 100,
        "statements": 100
      }
    }
  }
}

编辑:这是我收到的错误消息:

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

  • collectCoverageFrom
  • coverageReporters
  • coverageThreshold
  • snapshotSerializers.

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

  • transform
  • testRegex
  • moduleFileExtensions
  • mapCoverage

If you wish to override other Jest options, you need to eject from the default setup. You can do so by running npm run eject but remember that this is a one-way operation. You may also file an issue with Create React App to discuss supporting more options out of the box.

您是否有任何理由使用react-scripts-ts / ts-jest而不是常规的开箱即用的 Create React App? 它在本地支持 TypeScript 已经有一段时间了。 我建议这样做,因为与 CRA 的默认值作斗争通常是一个痛点。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM