Jest badges generation action
ActionsTags
(2)Generating coverage badges and pushing them to the repository.
This github action generates testing coverage badges using jest and pushes them to the repo at ./badges
. There is five badges generated:
You can use them on a readme like so:





You will need to add json-summary to coverage reporters in jest config:
module.exports = {
coverageReporters: ["json-summary"];
};
You also need to run jest before calling this action in your ci workflow. See usage
for an example.
If set to true
, badges won't be committed by the github action.
Default value: false*
Branches on which the badges should be generated, separated by commas.
Default value: master,main
Jest coverage summary path (json-summary). Defining this may be useful if you need to run this action on a monorepo.
Default value: ./coverage/coverage-summary.json
Commit message of the commit with generated badges.
Default value: Updating coverage badges
Customizing the name of the user committing generated badges (optional).
Default value: <context.actor>
Customizing the email of the user committing generated badges (optional).
Default value: <context.actor>@users.noreply.github.com
Let's first define an npm script to run jest in package.json, specifying the coverage option to generate a coverage report:
{
"scripts": {
"test-ci": "jest --ci --coverage"
}
}
Let's then define our workflow:
name: My ci things
on: [push]
jobs:
bump:
runs-on: ubuntu-latest
steps:
# Necessary to push the generated badges to the repo
- name: Check out repository code
uses: actions/checkout@v2
# Necessary to generate the coverage report.
# Make sure to add 'json-summary' to the coverageReporters in jest options
- name: Tests
run: yarn test-ci
[...]
- name: Generating coverage badges
uses: jpb06/jest-badges-action@latest
with:
branches: master,preprod,staging
The badges will be generated when the action runs on the master, preprod or staging branch.
In case you need to define a custom path for the coverage summary file, you can use the coverage-summary-path
input like so:
[...]
- name: Generating coverage badges
uses: jpb06/jest-badges-action@latest
with:
coverage-summary-path: ./my-module/coverage/coverage-summary.json
Jest badges generation action is not certified by GitHub. It is provided by a third-party and is governed by separate terms of service, privacy policy, and support documentation.