unit-testing - 在 Jest 中生成 HTML coverageReport 的命令行方式

标签 unit-testing code-coverage jestjs

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

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

最佳答案

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

覆盖率报告有几种不同的配置选项。请在此处查看所有配置设置:https://jestjs.io/docs/en/configuration.html#collectcoverage-boolean

这是一个示例,说明如何使用一些选项在 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 报告将在指定目录中生成。

关于unit-testing - 在 Jest 中生成 HTML coverageReport 的命令行方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52104707/

相关文章:

java - Easymock 模拟输入流读取操作

android - 带有 mockito 测试的简单 kotlin 类导致 MissingMethodInvocationException

reactjs - SecurityError : localStorage is not available for opaque origins with new testEnvironmentOptions. url 选项

javascript - 从 CLI 生成的新 vue 3 项目的单元测试中出错

javascript - 麻烦单元测试 Angular react 性表单字段

javascript - 为什么这个带有简单异步回调的测试用例(Jest)会失败?

code-coverage - JaCoCo 测试覆盖率 : How to exclude a class inside jar from report?

使用 EMMA 的 Sonar 的 Delphi 代码覆盖率

tfs - 寻找在引入新警告时破坏构建的构建事件

javascript - 如何让jest不区分负零和正零?