Unit testing 在Jest中生成HTML coverageReport的命令行方法

Unit testing 在Jest中生成HTML coverageReport的命令行方法,unit-testing,code-coverage,jestjs,Unit Testing,Code Coverage,Jestjs,在Jest中,如果在Jest.config.js文件中未定义HTML覆盖率报告,是否可以从命令行生成该报告 我只想在某些时候生成HTML报告,而不是每次运行Jest时。生成HTML报告的唯一方法是手动更改配置。您是否尝试通过命令行传入JSON配置 npx jest./src/***.js--coverage--config='{“coverageReporters”:[“html”]} 以下是我在package.json中的测试脚本的一部分,可以帮助您生成覆盖率报告: "test": "rea

在Jest中,如果在Jest.config.js文件中未定义HTML覆盖率报告,是否可以从命令行生成该报告


我只想在某些时候生成HTML报告,而不是每次运行Jest时。生成HTML报告的唯一方法是手动更改配置。

您是否尝试通过命令行传入JSON配置


npx jest./src/***.js--coverage--config='{“coverageReporters”:[“html”]}

以下是我在package.json中的测试脚本的一部分,可以帮助您生成覆盖率报告:

"test": "react-scripts test --env=jsdom",
"test:coverage": "react-scripts test --coverage"

我的设置使用jest@23.6.0具有enzyme@3.8.0开玩笑-enzyme@7.0.1

默认情况下,jest的collectCoverage选项设置为false。获取HTML覆盖率报告的最简单方法是在package.json或jest.config.js中配置jest。您还需要在配置中设置coverage目录

覆盖率报告有几种不同的配置选项。有关所有配置设置,请参见此处:

下面是一个如何在package.json中使用几个选项配置jest的示例

{
  "name": "appname",
  "version": "1.0.0",
  "description": "description",
  "main": "index.js",
  "scripts": {
    "test": "jest",
    "postinstall": "jspm install"
  },
  "jest": {
    "scriptPreprocessor": "./preprocessor.js",
    "testPathIgnorePatterns": [
      "/node_modules/",
    ],
    "unmockedModulePathPatterns": [
      "./node_modules/react"
    ],
    "collectCoverage": true,
    "coverageDirectory": "path/to/coverage/reports",
  },
  "author": "author",
  "license": "ISC",
  "dependencies": {
    "del": "^1.1.1",
    "gulp": "^3.8.11",
    "gulp-filter": "^2.0.2",
    "gulp-load-plugins": "^0.10.0",
    "gulp-react": "^3.0.1",
    "gulp-shell": "^0.4.1",
    "harmonize": "^1.4.1",
    "jest-cli": "^0.4.1",
    "jspm": "^0.15.5",
    "react": "^0.13.2",
    "react-tools": "^0.13.2",
    "run-sequence": "^1.1.0"
  },
  "devDependencies": {
    "browser-sync": "^2.7.1",
    "gulp": "^3.8.11"
  },
  "jspm": {
    "directories": {},
    "dependencies": {
      "react": "npm:react@^0.13.2"
    },
    "devDependencies": {
      "babel": "npm:babel-core@^5.1.13",
      "babel-runtime": "npm:babel-runtime@^5.1.13",
      "core-js": "npm:core-js@^0.9.4"
    }
  }
}
现在,当您使用jest--coverage运行测试时,HTML报告将在指定的目录中生成