Skip to content

Endform config - endform.jsonc

To further configure endform, place an endform.jsonc file in your repository. It can be:

  • In the same folder as your playwright suite -> applies to that suite
  • In the root of your repository -> applies to all suites in your repository

Currently, endform.jsonc supports the following options:

additionalFiles: an array of strings used as globs to send extra files to your test machines.

{
"additionalFiles": ["user-state/*"]
}

If your playwright config already specifies storageState, this parameter should not be needed - endform will read and send those automatically. However if your tests have implicit dependencies on more files, use this parameter.

environmentVariables: an array of string regular expressions that are used to match environment variables that should be transferred to the remote runners.

{
"environmentVariables": ["VERCEL_.*"]
}

By default the following environment variables are automatically transferred:

  • Environment variables that start with E2E_
  • All environment variables that are set in your playwright.config.ts

Choose which host names will have their traffic redirected to the CLI from the remote runners. All the traffic sent from the remote runners to your CLI is sent encrypted over direct peer-to-peer connections. Read more about traffic to local servers here.

{
"proxyNetworkHosts": ["*.test.internal-domain", "*.staging.internal-domain", "<loopback>"]
}

Each string in the array is a match rule. Either:

  • A hostname pattern my-domain.com, *.interal.org
  • An IP literal like 127.0.0.1
  • <loopback> to match interfaces localhost, *.localhost, 127.0.0.1, [::1]

Array of reporter names which should run exclusively during remote execution of tests. Must correspond to the name of a reporter configured in your Playwright config.

For example in the case where endform.jsonc is:

{
"remoteReporters": ["./custom-reporter.ts"]
}

And playwright.config.ts set to:

import { defineConfig, devices } from "@playwright/test";
export default defineConfig({
reporter: [
["./custom-reporter.ts", { myCustomReporterOption: true }]
],
});

Then ./custom-reporter.ts will run once on each remotely running test machine (one per test), and not on the collected result.

Specify which organization id this project should run within. Is the highest precedence configuration for organization id when running suites. Makes suite runs fail if the authenticated user does not have access to that organization.

Control whether Endform retains Playwright traces for viewing in the dashboard. Accepts "on" (default) or "off".

{
"traceRetention": "off"
}

When set to "on" (the default), traces from your test runs are uploaded to Endform and can be viewed later in the dashboard.

When set to "off", traces are not uploaded to Endform. This can be useful for compliance requirements or if you have privacy concerns about trace data.

Note: This setting only controls what Endform stores for dashboard viewing. Regardless of this setting, traces are still generated and accessible locally depending on your Playwright trace config option.