playwright-merge-summary-json-reports
TypeScript icon, indicating that this package has built-in type declarations

1.0.4 • Public • Published

playwright-merge-summary-json-reports

npm (scoped)

This package works in tandem with:

The walk through found on https://playwrightsolutions.com.

The above package will generate a summary.json report after the Playwright run, while this package will combine multiple summary.json files into 1 file after a run with the --shard=x/x command.

Install

npm install playwright-merge-summary-json-reports --save-dev

Usage

Create a new file file in the appropriate directory

// lib/metrics/mergeReports.ts

import fs from "fs";
import path from "path";
import { mergeHTMLReports } from "playwright-merge-html-reports";
import { mergeSummary } from "playwright-merge-summary-json-reports";

const reportPathsToMerge = fs
  .readdirSync(process.cwd() + "/playwright-report", { withFileTypes: true })
  .filter((item) => item.isDirectory())
  .map(({ name }) => path.resolve(process.cwd() + "/playwright-report", name));

async function runReport(paths: string[]) {
  // merges the summary.json in each report-x folder and saves a summary.json to root directory
  await mergeSummary(paths);

  // merges html reports and saves to /html-report
  await mergeHTMLReports(paths, {
    outputFolderName: "html-report",
  });
}

runReport(reportPathsToMerge);

After a test run, where there is a folder /playwright-report with multiple sub-folders /report-1, /report-2/, etc. Running the command npx ts-node lib/metrics/mergeReports.ts will search through the folders for both html and json reports and combine them, and output the html report to html-report and the combined summary.json to the main directory.

If you found this helpful feel free to check out https://playwrightsolutions.com!

Package Sidebar

Install

npm i playwright-merge-summary-json-reports

Weekly Downloads

6,971

Version

1.0.4

License

MIT

Unpacked Size

14.9 kB

Total Files

12

Last publish

Collaborators

  • playwrightsolutions