【发布时间】:2023-01-07 21:15:57
【问题描述】:
我有简单的创建反应应用程序。我创建了 jest.config.ts 文件,因为我的项目是打字稿。
import type { Config } from "@jest/types";
// Sync object
const config: Config.InitialOptions = {
collectCoverageFrom: ["./src/modules/*.tsx", "./src/hooks/*.tsx", "./src/components/*.tsx"],
coverageThreshold: {
global: {
statements: 100,
branches: 100,
functions: 100,
lines: 100,
},
},
};
export default config;
但是当我运行 npm t 或 npm run test --watch 时,我的配置 coverageThreshold 和 collectCoverageFrom 不工作。我不知道出了什么问题。
以前我的配置文件有 js 扩展名,但我更改了它的类型,因为我认为这是它不起作用的原因。
我也试着写而不是这个collectCoverageFrom: ["./src/modules/*.tsx", "./src/hooks/*.tsx", "./src/components/*.tsx"],
这个collectCoverageFrom: ["**/src/modules/*.tsx", "**/src/hooks/*.tsx", "**/src/components/*.tsx"],
还有这个
collectCoverageFrom: ["**/src/**/*.tsx"],
但是jest.config 文件不起作用。
包.json
{
"name": "ui",
"version": "0.1.0",
"private": true,
"dependencies": {
"@emotion/react": "^11.5.0",
"@testing-library/jest-dom": "^5.11.4",
"@testing-library/react": "^11.1.0",
"@types/node": "^12.0.0",
"@types/react": "^17.0.34",
"web-vitals": "^1.0.1"
// other libs
},
"scripts": {
"start": "react-scripts start",
"proxy": "concurrently \"react-scripts start\" \"npm run mock\" ",
"mock": "nodemon mock --watch mock",
"build": "react-scripts build",
"test": "react-scripts test --coverage",
"eject": "react-scripts eject",
"prettier": "prettier --ignore-path .gitignore --write \"**/*.+(js|json)\"",
"lint": "eslint --ignore-path .gitignore --ext .js,.ts,.tsx .",
"format": "npm run prettier -- --write",
"check-format": "npm run prettier -- --list-different",
"validate": "npm-run-all --parallel lint check-format build"
},
"devDependencies": {
"@testing-library/react-hooks": "^7.0.2",
"@types/jest": "^26.0.24",
"ts-jest": "^27.1.4",
// any other libs
}
}
覆盖文件夹中的 index.html 文件也显示这样的覆盖范围
60.6%报表
20/3340%分支机构4/1046.66%职能7/1558.62%线条17/29这意味着当我运行
npm tjest must show me error about global coverage does not 100%.但我在终端中没有看到任何错误。
【问题讨论】:
标签: reactjs typescript jestjs