Короткий ответ Единого готового рецепта нет: разумный подход — закладывать базовые тесты (unique, not_null) на ключи во всех слоях, более глубокие бизнес-тесты (relationships, кастомные тесты на допустимые диапазоны) концентрировать на уровне marts, которые видит бизнес, и явно определить владельцев моделей, а не пытаться покрыть тестами абсолютно всё одинаково строго. Как это работает подробнее Как это работает: слой staging отвечает за приведение сырых данных к единому виду (типы, именование), intermediate — за промежуточные трансформации и соединения, marts — за финальные бизнес-метрики; тесты в dbt декларируются в YAML и могут быть как встроенными (generic tests), так и кастомными SQL-тестами (singular tests), которые возвращают строки-нарушения. Пример кода Что использовать на практике На практике: критичные для бизнеса marts-модели (например, таблица с выручкой для отчёта перед руководством) заслуживают дополнительных тестов на диапазоны значений и сверку с контрольной суммой из источника, тогда как про