Skip to content

Data entities, parameters, and variants

Realistic load tests need realistic input data — users, products, search terms, or feature flags. MaxoPerf gives you a small set of building blocks that keep that data in one place and let you reuse it everywhere.

A data entity is a workspace-shared dataset. It lives next to your projects so any test in the workspace can use it. A data entity has:

  • A schema describing the columns or fields the dataset contains.
  • One or more variants — concrete sets of values.
  • Optional parameters — values that change per test without editing the underlying entity.

Common examples:

  • A users entity with email, password, and tier columns.
  • A products entity with sku, category, and price.
  • A search-terms entity loaded from a CSV your search team curates.
The Test data area lists every dataset in the workspace, its type (synthetic or CSV), and how many variants it has.

A variant is a concrete dataset for an entity. You usually keep:

  • A CSV variant uploaded from your team’s source of truth.
  • A synthetic variant generated from a faker-style catalog so you can run very large tests without giving every runner the same row.

Tests bind to a variant when they run. You can swap variants without editing the test definition — useful for swapping production-like data into a staging test, or vice versa.

A parameter is a per-test value. Parameters are useful when most of the data is shared but one or two values change per test — for example, a base URL, an account identifier, or a feature flag.

Parameters are visible in the test settings and recorded with each run, so the result page shows the exact parameter values used.

A dataset's Columns define the fields delivered to runners — each maps to a CSV column or a synthetic generator, referenced by name in your test scripts.

The Data tab on a test is where you bind an entity and variant to that test and set any per-test parameter overrides:

The Data tab on a test binds a dataset entity and variant to the test, alongside the workspace secrets injected at run time.
You wantUse
A fixed, small dataset that everyone sharesCSV variant
Per-runner unique rows so accounts do not collideSynthetic variant
The same dataset with a few values tweaked per testParameter

For sensitive values like API tokens or passwords, do not put them into a data entity. Use Manage test secrets instead.

Last updated: