Merv-Server — send reports to the cloud

Merv-Server stores your test suites, cases, and steps in a central database and shows them in the MERV web app. Your automation project does not need local HTML report folders — set merv.local=false and results are pushed to the server during the run.

Merv-Local vs Merv-Server: Merv-Local writes merv-reports/ on disk. Merv-Server sends data to merv.online (or your hosted API). Pick one mode in merv.properties — do not mix both for the same run.
You will learn
  • How to register and sign in at https://merv.online/app
  • Personal workspace vs organization workspace
  • Projects, SubProjects, and the Hierarchy ID for merv.parent_hierarchy
  • Server-only merv.properties and API keys for CI

Create account Sign in API Documentation

1. Create account

  1. Open https://merv.online/app/create-account (or click Create account on the login page).
  2. Complete the registration form: name, email, username, password, and optional company details.
  3. Submit — MERV sends a verification email. Click the link in that email to activate your account.
  4. After verification, go to https://merv.online/app and sign in with your username and password.

New accounts receive a Personal workspace with a default project so you can create test suites immediately. Admin approval may be required on some deployments — check your email if login is blocked.

2. Login

  1. Go to https://merv.online/app.
  2. Enter your username and password.
  3. After login you land on the Dashboard — suites, projects, and KPIs for your active workspace.

Forgot password? Use Forgot password? on the login page, or Account Settings → Password after signing in.

3. Create workspace (organization)

A workspace decides which projects and test suites you see. There are two types:

WorkspaceWho sees the dataHow to use
Personal workspace You by default; you can also share it with members Default after signup. Open Organizations, select Personal-workspace, then Add member / invite. Switch via the workspace menu.
Organization You and invited members Shared team workspace — same projects, suites, and reports for everyone in the org.

Create an organization (team workspace)

  1. Sign in and open Organizations in the main menu (https://merv.online/app/organizations).
  2. Click Create organization, enter a name and description, and save.
  3. Add members (email / user) with roles: Owner, Admin, Manager, or Member.
  4. Use the workspace switcher (top navigation) to switch between Personal and your organization.

Share your personal workspace

  1. Open Organizations and select Personal-workspace (marked Personal).
  2. Click Add member to grant access by email, or invite someone who does not have an account yet.
  3. Invitees see that workspace under Organizations in the workspace switcher and can open its projects.
Important: Projects and hierarchy IDs are scoped to the active workspace. Copy the Hierarchy ID while the correct workspace is selected before pasting it into merv.properties.

4. What is a SubProject?

In MERV, Project and SubProject are levels of the test hierarchy (folder structure for organizing suites):

Create a project or SubProject

  1. Open Hierarchy / Projects in the menu (https://merv.online/app/hierarchy).
  2. At the root level, click Create Project to add a top-level project.
  3. Open a project card, then click Create SubProject on that card to add a child.
  4. Click a project name to drill into its SubProjects. Breadcrumbs at the top show your path.

When merv.parent_hierarchy is set, new suites from your automation land under that project. If omitted, suites are created under your workspace Default Project.

5. How to get Hierarchy ID

The Hierarchy ID is a UUID that identifies a project or SubProject. You need it for merv.parent_hierarchy in merv.properties.

  1. Sign in and select the correct workspace (Personal or organization).
  2. Go to Hierarchy (https://merv.online/app/hierarchy).
  3. Find the project or SubProject you want automation to target.
  4. On the project card, click the Copy ID button (clipboard icon) in the card header.
  5. A success message confirms: Hierarchy ID for … copied to clipboard.
  6. Paste the UUID into merv.parent_hierarchy in your project’s merv.properties.

Example UUID format:

merv.parent_hierarchy=a1b2c3d4-e5f6-7890-abcd-ef1234567890

6. merv.properties (server mode)

Place merv.properties in your automation project root (same folder as pom.xml or playwright.config.js). Use this template for Merv-Server only — no local report folder required.

# ========== Merv-Server (send reports to MERV cloud) ==========
merv.local=false
merv.server=https://merv.online/api/v1

# Authentication — use API key (recommended for CI) OR username/password
merv.api_key=merv_paste_your_key_here
# merv.username=your_username
# merv.password=your_password

# Where new test suites are created (copy from Hierarchy → Copy ID)
merv.parent_hierarchy=your-project-or-subproject-uuid

# Suite title for new runs (shown in the UI)
merv.regression_suite=Regression Test Suite

# Optional metadata
merv.sprint=Sprint 1
merv.tags=smoke,regression

# Parallel workers (Playwright / TestNG) — one shared suite per run
merv.execution.parallel=true

# Playwright / JS only — optional step category allowlist
# merv.step.allowed=info,assertion,action

# Record Chai expect/assert as ASSERTION (default on when chai is installed)
# merv.chai=true

Download sample merv.properties

PropertyRequiredDescription
merv.local Yes Must be false for server mode. Results go to MERV API — not merv-reports/ on disk.
merv.server Yes API base URL including /api/v1. Production: https://merv.online/api/v1.
merv.api_key Recommended API key from Account Settings. Preferred for CI and Playwright workers.
merv.parent_hierarchy Optional UUID from Copy ID on a project card. Targets that project/SubProject for new suites.
merv.regression_suite Recommended Title of the test suite created or reused for the run.
merv.execution.parallel Optional true when multiple workers run together — they share one suite per run.
merv.step.allowed Optional (JS) Playwright / Cucumber-js report step allowlist: info, hook, assertion, action. Categories not listed are omitted from posted steps. Example: merv.step.allowed=info,assertion,action.
merv.chai Optional (JS) When chai is installed, record Chai assertions as MERV ASSERTION steps (default true). Playwright expect still posts as EXPECT — both can appear in the same testcase. Set false to disable. See Playwright JS — Chai assertions.
Cucumber-js peer dependency: merv-client supports optional peer @cucumber/cucumber ≥ 7.0.0 (and @playwright/test ≥ 1.40 when using Playwright). You do not need Cucumber 11+. Use merv-client 4.0.22+ for a clean npm install, or npm install --legacy-peer-deps if an older published package still declares a stricter peer.

Java (Cucumber, TestNG, JUnit): use the same handlers/listeners — server mode is selected automatically when merv.local=false. Cucumber-js: use merv-client/cucumber-formatter in cucumber.js — see Cucumber-js guide (server section). Playwright Test: use merv-client reporter or await MervReport.open() — see Custom report guide (JavaScript / TypeScript tabs).

7. Create a new API key

  1. Sign in at https://merv.online/app.
  2. Open Account Settings (profile menu) → API Keys (https://merv.online/app/account/api-keys).
  3. Click Create API Key.
  4. Enter a name (e.g. jenkins-playwright) and optional expiry date.
  5. Click create — the full key is shown once. Copy it immediately.
  6. Paste into merv.api_key=... in merv.properties. Do not commit keys to git.
Expired key: If a key expires, merv-client logs ******* API Key is EXPIRED ********. Create a new key in the UI and update your properties or CI secret.

8. Send reports from your tests

With server merv.properties in place:

  1. Wire your framework (Cucumber plugin, TestNG listener, JUnit 5 extension, or Playwright reporter / MervReporter).
  2. Run tests as usual (mvn test, npx playwright test, etc.).
  3. During the run, merv-client creates or joins a test suite on the server and posts cases, steps, and screenshots.
  4. No merv-reports/ folder is required on the runner machine.

For Playwright parallel runs, set MERV_PROJECT_ROOT to your project root in CI so all workers coordinate on one suite.

9. View results in the UI

  1. Sign in and confirm the same workspace you used when copying the Hierarchy ID.
  2. Dashboard — suite status, pass/fail charts, project breakdown.
  3. Test Suites — open a suite to see cases and execution details.
  4. Test Case Management — drill into steps, screenshots, and failure reasons.
  5. Project KPIs — open from a project card on the Hierarchy page.

Quick reference

TaskWhere in the app
Create accounthttps://merv.online/app/create-account
Loginhttps://merv.online/app
Create organization workspacehttps://merv.online/app/organizations
Switch workspaceWorkspace switcher (top bar)
Projects & SubProjectshttps://merv.online/app/hierarchy
Copy Hierarchy IDProject card → Copy ID (clipboard icon)
API keyshttps://merv.online/app/account/api-keys
API DocumentationOpen API Documentation

Create account Sign in API Documentation