M00N ReportPlaywright Java / JUnit
Documentation/Reporters/Playwright JUnit

🎭Playwright JUnit Reporter

A Playwright JUnit reporter for M00N Report. Designed for Playwright Java browser automation with automatic step tracking via AspectJ, declarative test-case linking via @TestCaseId, real-time streaming, and rich artifact capture (screenshots, videos, traces).

Features

Real-Time Streaming

Test results stream to the dashboard as each test completes.

Automatic Steps

Methods annotated with @Step are tracked automatically via AspectJ.

Rich Attachments

Screenshots, videos, traces, and logs are captured on failure.

Retry Tracking

Each retry attempt is tracked as a separate execution record.

🎭
Built for Playwright

First-class Playwright Java integration with automatic artifact capture.

Case Linking

@TestCaseId links autotests to manual cases - single, multi-case, and parametrized modes.

Parallel Execution

Thread-safe for parallel test execution under JUnit Jupiter.

AI Setup Prompt

A complete, self-contained prompt for integrating this reporter into an existing Playwright Java project using an AI assistant. The prompt covers dependencies, configuration files, the base test class, page object pattern, retry handling, test case linking, video capture, and the most common integration pitfalls.

Store API keys outside version control. Add m00n.properties to.gitignore and commit a m00n.properties.example template with placeholder values.

Configuration Reference

Each setting is resolved in one order: -D system property, then environment variable, then m00n.properties.

PropertyEnv varRequiredDescription
m00n.serverUrlM00N_SERVER_URLYesM00N Report server URL (e.g., https://m00nreport.com)
m00n.apiKeyM00N_API_KEYYesYour project API key (get from dashboard)
m00n.enabledM00N_ENABLEDNoEnable/disable reporter (default: true)
m00n.launchM00N_LAUNCHNoCustom name for this test run
m00n.tagsM00N_TAGSNoComma-separated list of tags
m00n.debugM00N_DEBUGNoEnable debug logging (default: false)
m00n.timeoutM00N_TIMEOUTNoMilliseconds before a request is abandoned (default: 30000)
m00n.maxRetriesM00N_MAX_RETRIESNoAttempts per failed request (default: 3)
m00n.attribute.*-NoCustom attributes (e.g., m00n.attribute.browser=chromium)
-M00N_ATTRIBUTE_<NAME>NoSets one attribute. M00N_ATTRIBUTE_BRANCH=main becomes branch=main.
The API key does not have to live in the file. Set M00N_API_KEY in the environment and the properties file can be committed. Attribute values are the one place the file is interpolated: m00n.attribute.branch=${env.GITHUB_REF_NAME} resolves at run time, and drops the attribute if the variable is unset.

CI/CD Context Banner

When you pass CI/CD-related attribute keys (via m00n.attribute.*), M00N Report automatically displays them in a dedicated CI context banner at the top of the launch view. Any attributes that don't match the keys below are shown as regular attribute badges.

Recognized CI Attribute Keys

Banner FieldAccepted Keys (case-insensitive)Example Value
Pipelinepipeline, GITHUB_WORKFLOW, CI_PIPELINE_NAME, JOB_NAMEDeploy Production
Branchbranch, git_branch, GITHUB_REF, CI_COMMIT_REF_NAME, BRANCH_NAMEmain
Commitcommit, git_commit, GITHUB_SHA, CI_COMMIT_SHA, GIT_COMMITa1b2c3d (truncated to 7 chars)
Build #build_number, GITHUB_RUN_NUMBER, CI_PIPELINE_ID, BUILD_NUMBER1234
Build URLbuild_url, GITHUB_SERVER_URL, CI_PIPELINE_URL, BUILD_URLhttps://github.com/... (clickable)
Environmentenvironment, env, DEPLOY_ENVstaging
Triggertrigger, GITHUB_EVENT_NAME, CI_PIPELINE_SOURCEpush
Tip: In m00n.properties, use m00n.attribute.branch=main to set the branch. The attribute name after m00n.attribute. is matched against the accepted keys above.

Concepts

Reference documentation for each subsystem of the reporter: attachment capture, extension coexistence, test case linking, step tracking, retry handling, and troubleshooting.

Last updated