簡體   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