A Jest plugin that generates coverage data for CircleCI's Smarter Testing.
This plugin uses the v8 JS engine Profiler APIs to collect coverage.
Install the plugin.
pnpm add -D jest-circleci-coverageAdd the custom runner and reporter to your jest.config.ts:
import {createDefaultPreset} from 'ts-jest';
import type {Config} from 'jest';
const tsJestTransformCfg = createDefaultPreset().transform;
const config: Config = {
testEnvironment: 'jest-circleci-coverage/environment',
reporters: ['default', 'jest-circleci-coverage/reporter'],
transform: {
...tsJestTransformCfg,
},
};
export default config;Set the CIRCLECI_COVERAGE environment variable when running tests to enable test coverage.
CIRCLECI_COVERAGE=coverage.json jestInstall and use current node version.
NODE_VER=$(cat ./.nvmrc)
nvm install $NODE_VER
nvm use $NODE_VERInstall dependencies with pnpm.
pnpm installBuild the plugin.
pnpm buildRun tests.
pnpm test