繁体   English   中英

将 TypeScript 与 Jest 一起使用不会捕获语法错误

[英]Using TypeScript with Jest not catching syntax errors

将打字稿编译回 js 时,您可以指定选项--alwaysStrict ,其中:

以严格模式解析并为每个源文件发出“使用严格”

因此,如果您在函数中缺少一个强制参数,它就会被这种严格模式捕获。

我们正在使用ts-jest因此我们可以使用 Jest 来测试我们的 Typescript 代码。 我们面临的问题是我们还没有找到模仿严格解析行为的方法。

这真的很烦人,因为所有测试似乎都通过了,但有时会出现语法错误,我们只在创建生产版本时才注意到(我们设置了--alwaysStrict

在我们的jest.config.js我们有:

module.exports = {
  roots: ["<rootDir>/src"],
  transform: {
    "^.+\\.tsx?$": "ts-jest"
  },
  testRegex: "(/__tests__/.*|(\\.|/)(test|spec))\\.tsx?$",
  moduleFileExtensions: ["ts", "tsx", "js", "jsx", "json", "node"],
  "testEnvironment": "node"
};```

ts-jest默认使用项目中的tsconfig.json

(注意:如果你想要一个单独的测试配置文件,你可以配置ts-jest以使用不同的配置文件

您可以在配置文件compilerOptions部分中设置alwaysStrict ,并且ts-jest在编译您的 TypeScript 时使用该标志。

暂无
暂无

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

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