TypeScript Coverage Report
Node command line tool for generating TypeScript coverage reports ✨
Overview
This package fills the gap of a missing type coverage reporting tool which is present in the Flow ecosystem, strongly inspired by the amazing work done by flow-coverage-report
and using data generated by type-coverage
.
See an example of the coverage report.
Background
To learn more about the reasoning behind this project and its roadmap, please refer to the following article: How I built a TS coverage report tool
Install
typescript-coverage-report
can be installed locally or globally.
Users are advised to install it as a project (dev) dependency and create a script in package.json
.
$ yarn add --dev typescript-coverage-report
# OR
$ npm install --save-dev typescript-coverage-report
Usage
If installed locally, add the following to the scripts section of package.json
.
"scripts": {
"ts-coverage": "typescript-coverage-report"
}
Then run:
$ yarn ts-coverage
# OR
$ npm run ts-coverage
To set the minimum threshold (80% by default), use the --threshold
option.
$ yarn ts-coverage --threshold=99
As an alternative, options may be provided through the type-coverage
configuration, specified in package.json
.
"typeCoverage": {
"atLeast": 90
}
Options
The CLI accepts a list of arguments:
Option | Description | Default value |
---|
-t, --threshold [number] | The minimum percentage of coverage required. | 80 |
-o, --outputDir [string] | The output directory where to generate the report. | coverage-ts |
-s, --strict [boolean] | Run the check in strict mode. | false |
-d, --debug [boolean] | Show debug information. | false |
Maintainers
@alexcanessa
Contributing
Feel free to dive in! Open an issue or submit PRs.
On this project we follow the Contributor Covenant Code of Conduct.
Contributors ✨
Thanks goes to these wonderful people (emoji key):
This project follows the all-contributors specification. Contributions of any kind welcome!
Commit messages
This project follows the Angular commit messages, but it's very open to emojis 🤯.
Licence
MIT @ Alessandro Canessa