Pipeline Tests¶
Tests let you assert what a pipeline should produce before it reaches production. They're the gate between "it ran" and "it ran correctly".
What a test is¶
A test pairs input fixtures with assertions. When a pipeline runs under test, the fixture data is injected in place of live data and the assertions are checked against the result.
Where to find them¶
Data Tools → Tests lists the tests in your organization. Each is attached to a pipeline; opening one shows its fixtures, assertions and recent results.
When they run¶
Tests run in QA and in production before a version is promoted. A failing test stops the promotion — the point is to find the problem while it's still a draft rather than after it's scheduled.
Writing a useful test¶
Assert the things that would actually hurt if they were wrong:
- Row counts within an expected range, rather than an exact number that will drift.
- Nulls absent from columns that must never be null.
- Totals reconciling against a known control figure.
- Keys unique where you expect uniqueness.
A test that only checks the pipeline didn't error tells you little more than the run status already does.
Related¶
- Deployments — promotion between environments
- Monitoring — what happened after release