Skip to main content

externalHtmlReportGenerator

A StageCrewMember that aggregates archived test run data and generates the HTML report (data.js + index.html).

Unlike HtmlReporter, this crew member does not collect test data during the run. It only performs the aggregation and HTML generation step. Use it when data collection is handled separately by TestRunArchiver — for example, in CI pipelines where parallel jobs each archive their own data, and a final step aggregates everything into one report.

The serenity-js-html-reporter aggregate CLI command uses HtmlReportGenerator internally.

When to use HtmlReportGenerator instead of HtmlReporter

Use HtmlReporter (the default) when you want a single crew member to handle both data collection and report generation in the same process.

Use HtmlReportGenerator when:

  • Test data is archived separately (by TestRunArchiver or an external process)
  • Report generation runs in a dedicated post-processing step
  • You aggregate results from multiple CI jobs into a single report

Registering as a crew member

import { configure } from '@serenity-js/core';

configure({
crew: [
['@serenity-js/html-reporter:HtmlReportGenerator', {
outputDirectory: './reports/serenity-js',
specDirectory: './spec',
}],
],
});

Standalone usage via CLI

When test data has been archived by TestRunArchiver in prior CI steps, generate the report using the CLI:

npx @serenity-js/html-reporter aggregate \
--input "./ci-artifacts/test-runs/**" \
--output ./reports/serenity-js \
--spec-dir ./spec

Programmatic registration with fromJSON

import { configure } from '@serenity-js/core';
import { HtmlReportGenerator } from '@serenity-js/html-reporter';

configure({
crew: [
HtmlReportGenerator.fromJSON({
outputDirectory: './reports/serenity-js',
specDirectory: './spec',
}),
],
});

Implements

Index

Constructors

externalconstructor

  • new HtmlReportGenerator(aggregator: SingleSourceAggregator, templateWriter: ReportTemplateWriter, stage?: Stage): HtmlReportGenerator
  • Parameters

    • externalaggregator: SingleSourceAggregator
    • externaltemplateWriter: ReportTemplateWriter
    • externaloptionalstage: Stage

    Returns HtmlReportGenerator

Methods

staticexternalfromJSON

externalassignedTo

externalnotifyOf

  • Parameters

    Returns void

externalgenerate

  • generate(): void
  • Generates the report. Can be called directly for standalone/CLI usage.


    Returns void