qa-forge-jest
v1.1.2
Published
QAnalyzer Jest reporter — ingest or file modes via qa-forge-commons
Maintainers
Readme
qa-forge-jest
Jest reporter for QAnalyzer (Jira Forge quality hub).
Install
npm install -D qa-forge-jest qa-forge-commonsConfigure
// jest.config.js
module.exports = {
testEnvironment: 'node',
reporters: [
'default',
[
'qa-forge-jest',
{
// Defaults to mode=off (no credentials required)
// mode: 'ingest' | 'file' | 'off',
// projectKey: 'DEMO',
},
],
],
};Modes
| Mode | Behavior |
| ---- | -------- |
| off (default) | No network / file write |
| file | Writes ingest payload (default ./qanalyzer-results.json) |
| ingest | POSTs the payload with format: jest-json |
Env (same as CLI): QANALYZER_MODE, QANALYZER_PROJECT_KEY, QANALYZER_INGEST_URL, QANALYZER_INGEST_TOKEN, QANALYZER_LAUNCH_NAME.
Helpers
const { qa } = require('qa-forge-jest/jest');
test('AUTH-101 login', async () => {
await qa.suite('Auth');
await qa.step('open form', async () => {
expect(true).toBe(true);
});
});Prefer Jira issue keys in test titles.
With the qa-forge-jest reporter loaded (use --runInBand so helpers share the reporter bridge), qa.* metadata is attached as assertionResults[].meta.qa on Path B ingest/file.
Dual path
Path A — native JSON + CLI (upload path; raw Jest JSON file):
npx jest --json --outputFile=qanalyzer-results.json
npx qa-forge-api-client --project DEMO --report qanalyzer-results.jsonPath B — qa-forge-jest reporter (mode=ingest or mode=file):
QANALYZER_MODE=ingest \
QANALYZER_PROJECT_KEY=DEMO \
QANALYZER_INGEST_URL=... \
QANALYZER_INGEST_TOKEN=... \
npx jestmode=file writes an ingest payload (not raw Jest JSON). Path A and Path B produce schema-equivalent ingest payloads for the same run (format: jest-json, same assertion titles/statuses).
