← noteworthy

SEP 2026 · Practice note · QA / lifecycle

Synthetic test users make end-to-end QA dramatically easier.

A reusable set of named test profiles across identity, consent and lifecycle states creates a shared language for proving that customer journeys actually behave as intended.

Ad hoc test data makes QA harder than it needs to be.

When every release creates new test users on the fly, teams spend time reconstructing states instead of testing behaviour. One person tests an opted-in customer, another uses a profile with incomplete identity, and a third unknowingly reuses a record whose history already changed the result.

A reusable test profile is not fake data. It is a controlled instrument for proving system behaviour.

I prefer a small, named test set.

The exact profiles depend on the program, but the structure usually covers the important branches:

ExampleReusable lifecycle test set
I prefer a small, named test set.
Profile State What it proves
TEST-01 Known + fully consented Happy path / intended entry and message
TEST-02 Known + opted out Suppression / consent enforcement
TEST-03 Anonymous → identified Identity transition and profile continuity
TEST-04 Eligible at trigger, then converts Exit logic before message
TEST-05 Missing required source attribute Failure handling / exclusion
TEST-06 Duplicate or replayed event Idempotency / duplicate protection

The profiles need operating rules.

  • Give each profile a stable purpose and owner.
  • Document the expected state before each scenario.
  • Reset only what must be reset, and record when the state changes.
  • Keep identifiers obvious enough that nobody mistakes them for real customers.
  • Use the same profiles across source systems when end-to-end lineage matters.
  • Pair each profile with an expected outcome so screenshots and logs have context.

The value is shared evidence.

Synthetic users make debugging faster because everyone is talking about the same record. Marketing can point to the expected message, engineering can inspect the event and payload, data teams can trace the source record, and QA can compare actual behaviour with a pre-agreed scenario.

They are especially useful for negative tests. It is easy to prove that a message sent. It is more important to prove that the customer who should not receive it did not.

Worked example · October 9, 2026

An inspectable synthetic cohort.

The Waypoint fixture set includes opt-out after entry, stale consent arriving late, anonymous identity resolution, a newer anonymous opt-out and a conflicting identified-customer merge. Each fixture fixes the evaluation clock and records its expected decision. The tests compare actual decisions with those explicit expectations.

Inspect the example →

Fictional local exercise; no live vendor or client outcome is asserted.