3 ms·
> We test every situation that we can think of: errors, edge cases, and so on. Pretty bold claim. Either their fantasy can't think of many weird data issues, o
by snidane 5y ago
> We test every situation that we can think of: errors, edge cases, and so on.
Pretty bold claim. Either their fantasy can't think of many weird data issues, or their data is somehow guaranteed to be always validated, or they came up with a magic secret sauce for data unit testing.
Could anybody explain what they mean by their version of unit testing?
Does it mean to test that a change in code will still successfully process the same static data sample as was tested previously?
If not using static data, what does it test when the input data changes? Does it validate the input data?
- dafelst 5y agoI don't know what they do at Shopify, but I have seen teams be successful with using dbt's (https://getdbt.com https://getdbt.com) unit testing methodologies and tooling. It makes it very easy to do things like cardinality and null checking, and if you're using a datamart like Snowflake with snapshots, it is super easy to have test harnesses with representative data. To me the combination of tools there is the secret sauce, since data mocking is such a giant tedious pain in the ass.
- croes 5y ago>We test every situation that we can think of Doesn't say anything about how many situations they think of.
- nojito 5y agoValidating data on ingest solves many many problems down the line.
- burnoutgal 5y agoWhen I was at Shopify, it was Python unit tests for ETL code. There was a framework of reusable components that simplified things, but it was all homegrown. They were trying to move to dbt