@reportforge/playwright-pdf 0.6.0 → 0.6.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +11 -0
- package/README.md +76 -31
- package/dist/index.js +1 -1
- package/dist/index.mjs +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,17 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
Format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).
|
|
5
5
|
|
|
6
|
+
## [0.6.1] — 2026-06-22
|
|
7
|
+
|
|
8
|
+
### Documentation
|
|
9
|
+
|
|
10
|
+
- **Expanded the Report Sections reference** — per-section descriptions for all 13 block toggles, the 5 display modifiers, a per-template defaults matrix, and the dependency rules (`trend` needs `charts`, data-gated sections, render-layer only) in both the README and the docs site.
|
|
11
|
+
- Fixed the README documentation links to point at the real `/docs/<page>` routes instead of non-existent `/docs#<anchor>` anchors.
|
|
12
|
+
|
|
13
|
+
_No runtime changes — `@reportforge/playwright-pdf@0.6.1` is identical in behaviour to `0.6.0`._
|
|
14
|
+
|
|
15
|
+
---
|
|
16
|
+
|
|
6
17
|
## [0.6.0] — 2026-06-22
|
|
7
18
|
|
|
8
19
|
### Added
|
package/README.md
CHANGED
|
@@ -109,7 +109,7 @@ npx playwright test
|
|
|
109
109
|
|
|
110
110
|
### Chrome setup
|
|
111
111
|
|
|
112
|
-
The reporter auto-detects Chrome via `PUPPETEER_EXECUTABLE_PATH`, then system Chrome, then `chrome-finder`. Full per-OS instructions: [reportforge.org/docs#chrome-setup](https://reportforge.org/docs#chrome-setup).
|
|
112
|
+
The reporter auto-detects Chrome via `PUPPETEER_EXECUTABLE_PATH`, then system Chrome, then `chrome-finder`. Full per-OS instructions: [reportforge.org/docs/running-tests#chrome-setup](https://reportforge.org/docs/running-tests#chrome-setup).
|
|
113
113
|
|
|
114
114
|
**Windows**
|
|
115
115
|
|
|
@@ -202,7 +202,7 @@ All options are the second element of the reporter tuple.
|
|
|
202
202
|
| `sections` | `object` | per-template | Override which report sections appear, on top of the chosen template's defaults. Flat keys are the baseline for every chosen template; per-template keys (`minimal`\|`detailed`\|`executive`) override per template. Block toggles: `coverPage`, `analysisOneliner`, `releaseGate`, `summary`, `charts`, `trend`, `requirementsMatrix`, `ciEnvironment`, `suiteBreakdown`, `failureDeepDive`, `failureAnalysis`, `slowTests`, `defectLog`. Display modifiers: `passRate`, `fullEnvironment`, `retries`, `fullFailures`, `stackTraces`. See the Report Sections docs. |
|
|
203
203
|
<!-- AUTOGEN:options-table END -->
|
|
204
204
|
|
|
205
|
-
Full reference: [reportforge.org/docs
|
|
205
|
+
Full reference: [reportforge.org/docs/configuration](https://reportforge.org/docs/configuration).
|
|
206
206
|
|
|
207
207
|
### Shard Merging
|
|
208
208
|
|
|
@@ -364,41 +364,86 @@ One license check, one data-collection pass — faster than multiple reporter in
|
|
|
364
364
|
|
|
365
365
|
### Report Sections
|
|
366
366
|
|
|
367
|
-
Each template ships a curated set of sections.
|
|
368
|
-
`sections` option — add a section a template hides, or remove one it shows.
|
|
367
|
+
Each built-in template ships a curated set of sections. The `sections` option lets you **add a section a template hides or remove one it shows — per template** — without writing a custom template.
|
|
369
368
|
|
|
370
369
|
```ts
|
|
371
370
|
reporter: [['@reportforge/playwright-pdf', {
|
|
372
371
|
template: ['minimal', 'detailed'],
|
|
373
372
|
sections: {
|
|
374
|
-
defectLog: false, //
|
|
375
|
-
minimal: { charts: true }, //
|
|
373
|
+
defectLog: false, // flat key: baseline for EVERY chosen template
|
|
374
|
+
minimal: { charts: true }, // per-template key: overrides the baseline
|
|
376
375
|
detailed: { ciEnvironment: false },
|
|
377
376
|
},
|
|
378
377
|
}]]
|
|
379
378
|
```
|
|
380
379
|
|
|
381
|
-
|
|
382
|
-
(`minimal` / `detailed` / `executive`) override the baseline for that template.
|
|
380
|
+
**Resolution order** (lowest → highest): the template's defaults → flat keys (baseline for all chosen templates) → per-template keys (`minimal` / `detailed` / `executive`). An unknown key throws a configuration error (typo-safe).
|
|
383
381
|
|
|
384
|
-
|
|
385
|
-
`charts`, `trend`, `requirementsMatrix`, `ciEnvironment`, `suiteBreakdown`,
|
|
386
|
-
`failureDeepDive`, `failureAnalysis`, `slowTests`, `defectLog`.
|
|
382
|
+
#### Block toggles — which sections appear
|
|
387
383
|
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
384
|
+
| Key | Renders |
|
|
385
|
+
|---|---|
|
|
386
|
+
| `coverPage` | Full-page cover: title, verdict badge, KPI stats strip, branch + commit |
|
|
387
|
+
| `analysisOneliner` | One-line failure-analysis summary banner |
|
|
388
|
+
| `releaseGate` | Ship/hold recommendation banner (APPROVED TO SHIP / HOLD) |
|
|
389
|
+
| `summary` | KPI strip (total · passed · failed · timed-out · skipped · flaky), verdict, duration, pass rate, flaky callout |
|
|
390
|
+
| `charts` | Pass-rate doughnut + stacked suite-results bar |
|
|
391
|
+
| `trend` | Pass-rate trend line, run-history table, and flakiness table (rendered inside `charts`) |
|
|
392
|
+
| `requirementsMatrix` | Tests grouped by `@tag('REQ-…')` with coverage bars (requirements traceability) |
|
|
393
|
+
| `ciEnvironment` | Branch, commit, browsers, CI provider, OS, Node, Playwright, projects, workers |
|
|
394
|
+
| `suiteBreakdown` | Per-suite → per-test table (status, duration, tags, retries) |
|
|
395
|
+
| `failureDeepDive` | Failure cards: error message, stack trace, screenshot, retry history |
|
|
396
|
+
| `failureAnalysis` | Clustered root-cause buckets from the offline classifier |
|
|
397
|
+
| `slowTests` | Slowest tests, duration-ranked |
|
|
398
|
+
| `defectLog` | `DEF-####` numbered failure table (severity, retries) |
|
|
399
|
+
|
|
400
|
+
#### Display modifiers — tune a section that's on
|
|
401
|
+
|
|
402
|
+
| Key | Effect |
|
|
403
|
+
|---|---|
|
|
404
|
+
| `passRate` | Show the pass-rate % on the Passed KPI card (`summary`) |
|
|
405
|
+
| `fullEnvironment` | Full environment table instead of the compact grid (`ciEnvironment`) |
|
|
406
|
+
| `retries` | Retries column in the suite breakdown (`suiteBreakdown`) |
|
|
407
|
+
| `fullFailures` | Full failure cards instead of one-line summaries (`failureDeepDive`) |
|
|
408
|
+
| `stackTraces` | Include `<pre>` stack traces in the failure cards (`failureDeepDive`) |
|
|
409
|
+
|
|
410
|
+
#### Per-template defaults
|
|
411
|
+
|
|
412
|
+
Omit `sections` entirely and each template renders exactly this (✓ = on):
|
|
413
|
+
|
|
414
|
+
| Section | minimal | detailed | executive |
|
|
415
|
+
|---|:-:|:-:|:-:|
|
|
416
|
+
| `coverPage` | – | – | ✓ |
|
|
417
|
+
| `analysisOneliner` | – | – | ✓ |
|
|
418
|
+
| `releaseGate` | ✓ | ✓ | ✓ |
|
|
419
|
+
| `summary` | ✓ | ✓ | ✓ |
|
|
420
|
+
| `charts` | – | ✓ | ✓ |
|
|
421
|
+
| `trend` | – | ✓ | ✓ |
|
|
422
|
+
| `requirementsMatrix` | – | ✓ | – |
|
|
423
|
+
| `ciEnvironment` | ✓ | ✓ | ✓ |
|
|
424
|
+
| `suiteBreakdown` | ✓ | ✓ | – |
|
|
425
|
+
| `failureDeepDive` | ✓ | ✓ | ✓ |
|
|
426
|
+
| `failureAnalysis` | – | ✓ | – |
|
|
427
|
+
| `slowTests` | – | ✓ | ✓ |
|
|
428
|
+
| `defectLog` | – | ✓ | – |
|
|
429
|
+
| `passRate` | ✓ | ✓ | ✓ |
|
|
430
|
+
| `fullEnvironment` | – | ✓ | – |
|
|
431
|
+
| `retries` | ✓ | ✓ | – |
|
|
432
|
+
| `fullFailures` | ✓ | ✓ | – |
|
|
433
|
+
| `stackTraces` | ✓ | ✓ | – |
|
|
434
|
+
|
|
435
|
+
#### Dependencies & gotchas
|
|
436
|
+
|
|
437
|
+
- **`trend` needs `charts`.** The trend line, run-history, and flakiness table live inside the charts block, so `trend: true` does nothing with `charts: false` (it's coerced off). It also needs history data — keep the top-level `showTrend` option on.
|
|
438
|
+
- **Data-gated sections** — `failureAnalysis`, `requirementsMatrix`, `slowTests`, `defectLog` render only when there's matching data (clusters, tagged tests, timed tests, failures). Toggling them on with no data shows nothing.
|
|
439
|
+
- **Render-layer only.** `sections` controls what's drawn, never what's collected — the data switches stay separate: `showTrend` (history), `flakinessTopN` (flaky-table size), `failureAnalysis.enabled` (classifier), `includeScreenshots` (images).
|
|
440
|
+
- **Custom templates.** `sections` applies to the built-in templates; a custom `templatePath` controls its own layout (every section available) and ignores `sections` — you'll get a warning if both are set.
|
|
396
441
|
|
|
397
442
|
---
|
|
398
443
|
|
|
399
444
|
## CI/CD Integration
|
|
400
445
|
|
|
401
|
-
Full workflows for all four CI providers: [reportforge.org/docs
|
|
446
|
+
Full workflows for all four CI providers: [reportforge.org/docs/ci-cd](https://reportforge.org/docs/ci-cd).
|
|
402
447
|
|
|
403
448
|
### GitHub Actions
|
|
404
449
|
|
|
@@ -534,7 +579,7 @@ export RF_LICENSE_KEY=RFSU-XXXX-XXXX-XXXX-XXXX
|
|
|
534
579
|
npx playwright test
|
|
535
580
|
```
|
|
536
581
|
|
|
537
|
-
Full lifecycle + offline failure modes: [reportforge.org/docs
|
|
582
|
+
Full lifecycle + offline failure modes: [reportforge.org/docs/licensing](https://reportforge.org/docs/licensing).
|
|
538
583
|
|
|
539
584
|
---
|
|
540
585
|
|
|
@@ -566,7 +611,7 @@ Common issues:
|
|
|
566
611
|
- **`pdfPassword` ignored** → requires `qpdf` on `PATH` (`apt install qpdf` / `brew install qpdf` / `choco install qpdf`).
|
|
567
612
|
- **No PDF generated** → verify `RF_LICENSE_KEY` is set and your subscription is active. `RF_DEBUG=1` will show the activation result; missing key, expired subscription, network failure, or no JWT cache all skip PDF generation.
|
|
568
613
|
|
|
569
|
-
Full guide: [reportforge.org/docs
|
|
614
|
+
Full guide: [reportforge.org/docs/troubleshooting](https://reportforge.org/docs/troubleshooting).
|
|
570
615
|
|
|
571
616
|
---
|
|
572
617
|
|
|
@@ -574,15 +619,15 @@ Full guide: [reportforge.org/docs#troubleshooting](https://reportforge.org/docs#
|
|
|
574
619
|
|
|
575
620
|
Full documentation at [reportforge.org/docs](https://reportforge.org/docs):
|
|
576
621
|
|
|
577
|
-
- [Quick start](https://reportforge.org/docs
|
|
578
|
-
- [Chrome setup](https://reportforge.org/docs#chrome-setup) — Windows, Linux, macOS
|
|
579
|
-
- [CI/CD integration](https://reportforge.org/docs
|
|
580
|
-
- [Configuration reference](https://reportforge.org/docs
|
|
581
|
-
- [Filename tokens](https://reportforge.org/docs#tokens) — `{date}`, `{branch}`, `{status}`
|
|
582
|
-
- [Templates](https://reportforge.org/docs
|
|
583
|
-
- [Report Sections](https://reportforge.org/docs#report-sections) — add or remove sections per template
|
|
584
|
-
- [License & offline behaviour](https://reportforge.org/docs
|
|
585
|
-
- [Troubleshooting](https://reportforge.org/docs
|
|
622
|
+
- [Quick start](https://reportforge.org/docs/quickstart) — install, configure, activate
|
|
623
|
+
- [Chrome setup](https://reportforge.org/docs/running-tests#chrome-setup) — Windows, Linux, macOS
|
|
624
|
+
- [CI/CD integration](https://reportforge.org/docs/ci-cd) — GitHub Actions, GitLab CI, Bitbucket Pipelines, Jenkins, Azure DevOps
|
|
625
|
+
- [Configuration reference](https://reportforge.org/docs/configuration) — all options
|
|
626
|
+
- [Filename tokens](https://reportforge.org/docs/configuration#tokens) — `{date}`, `{branch}`, `{status}`
|
|
627
|
+
- [Templates](https://reportforge.org/docs/templates) — minimal, detailed, executive
|
|
628
|
+
- [Report Sections](https://reportforge.org/docs/configuration#report-sections) — add or remove sections per template
|
|
629
|
+
- [License & offline behaviour](https://reportforge.org/docs/licensing) — JWT cache, machine cap, cancellation
|
|
630
|
+
- [Troubleshooting](https://reportforge.org/docs/troubleshooting) — common issues and debug flags
|
|
586
631
|
- **Changelog** — [CHANGELOG.md](./CHANGELOG.md)
|
|
587
632
|
|
|
588
633
|
---
|
package/dist/index.js
CHANGED
|
@@ -13231,7 +13231,7 @@ var PdfReporter = class {
|
|
|
13231
13231
|
this.dataCollector = new DataCollector();
|
|
13232
13232
|
this.pdfGenerator = new PdfGenerator();
|
|
13233
13233
|
this.options = parseOptions(rawOptions);
|
|
13234
|
-
const version = true ? "0.6.
|
|
13234
|
+
const version = true ? "0.6.1" : "0.x";
|
|
13235
13235
|
logger.info(`@reportforge/playwright-pdf v${version} initialised`);
|
|
13236
13236
|
this.licenseClient = new LicenseClient({
|
|
13237
13237
|
licenseKey: this.options.licenseKey,
|
package/dist/index.mjs
CHANGED
|
@@ -13232,7 +13232,7 @@ var PdfReporter = class {
|
|
|
13232
13232
|
this.dataCollector = new DataCollector();
|
|
13233
13233
|
this.pdfGenerator = new PdfGenerator();
|
|
13234
13234
|
this.options = parseOptions(rawOptions);
|
|
13235
|
-
const version = true ? "0.6.
|
|
13235
|
+
const version = true ? "0.6.1" : "0.x";
|
|
13236
13236
|
logger.info(`@reportforge/playwright-pdf v${version} initialised`);
|
|
13237
13237
|
this.licenseClient = new LicenseClient({
|
|
13238
13238
|
licenseKey: this.options.licenseKey,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@reportforge/playwright-pdf",
|
|
3
|
-
"version": "0.6.
|
|
3
|
+
"version": "0.6.1",
|
|
4
4
|
"description": "Enterprise-ready PDF reports for Playwright Test — minimal, detailed, and executive templates with CI/CD integrations",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "ReportForge",
|