Skip to main content

Region

Each project runs in one AWS region. Empirical currently supports: Region selection is managed by Empirical. Contact hey@empirical.run if your tests should run in a different supported region.

Shards

Sharding splits a suite across parallel workers to reduce run time. A project’s configured shard count is a maximum from 1 to 50; smaller filtered runs may use fewer shards so workers are not started with too little work. The run report shows each shard’s progress and logs. The public trigger API does not expose a shard override, and regular project members cannot change the project maximum in the dashboard. Contact hey@empirical.run to adjust it.

Report notifications

Each run reports through reporters: A run uses its environment’s reporters unless the trigger request names its own. A run without an environment has no reporters unless the request names them. A run started by a person (from the dashboard, the CLI or an agent session) also gets slack_creator_dm unless the trigger request names its own reporters; the DM arrives if that person has linked their Slack account under Settings → Profile. Runs triggered with a project API key have no one to DM. Environments cannot hold slack_creator_dm.

Setting up reporters

  • Slack: install the Slack app and register channels (Slack setup), then choose an environment’s channels under Settings → Environments.
  • GitHub: install the GitHub Reporter on the repositories your builds come from. The GitHub reporters only post for runs whose build.repo is one of those repositories. Installing the app turns the GitHub reporters on for your environments, and new environments include them; remove them from an environment under Settings → Environments to stop posting there.
  • Email: turn on the email report for an environment under Settings → Environments. It goes to everyone whose email address is in one of your organization’s email domains.
The List reporters API returns what your project can use: the registered Slack channels (with their C… ids); for each GitHub reporter, whether it can post and for which repositories; the email report; and whether runs you trigger can send you the Slack DM (no for project API keys, whose runs have no one to DM).

Choosing reporters for a run

When starting or rerunning a test from the dashboard, the Notifications tab lists the reporters you can use, pre-selected from the environment. Selections apply only to that run. From the API, pass reporters when triggering a run. The list replaces the environment’s reporters for that run; reporters you leave out do not post, and [] turns them all off:
Slack channels can be given as Slack channel ids (slack_channels) or as registered ids from the List reporters API (slack_channel_ids). A request naming an unknown channel is rejected without creating a run. See From CI/CD pipelines for a full example.
send_notifications is no longer supported and is ignored if sent. To turn off every reporter, including the Slack DM, send "reporters": [].
See Slack notifications for notification behavior.