Skip to content

How We Think

QA and PROD without a second database

Ask a small engineering team how they separate test from production data work and you usually get one of three answers.

"We have a staging database." Sometimes true, and good, though it's often months out of date — so passing there proves less than people think.

"We comment out the production bit before running." Honest, and terrifying.

"We have report.sql and report_prod.sql." The most common, and the one that quietly rots: the two files drift, and nobody can say which is correct.

None of these are laziness. They're what you get when environments are a convention rather than a mechanism. Here's the mechanism we chose instead.

An Approach to Pipeline Testing

Setestingpyramid
Data teams can learn a lot from software engineering. The same pyramid that guides unit, integration, and end-to-end testing for code also provides a blueprint for building confidence in your data pipelines