Skip to main content


Just like the core design patterns in your Serenity/JS scenarios revolve around the system metaphor of a stage performance, Serenity/JS reporting services follow the metaphor of a stage crew.

The StageCrewMembers observe the actors on Stage, watch the Activities they perform, and listen to the domain events emitted by their environment. They use the information they gather to generate artifacts, such as test reports, produce more events to prompt other crew members to action, or perform side effects like printing to the terminal, writing files to disk, or performing network or database calls.

Several of the Serenity/JS modules provide StageCrewMembers you can use for test reporting purposes:

You might want to study the above examples to create your own StageCrewMembers to produce custom reports or send the results to external reporting or storage systems.