Practice for the dbt Analytics Engineering Certification exam with 10 exam-style practice questions, instant answer reveals, and concise explanations of every correct answer. Topics include: In a dbt unit test, what does the given block specify?. Follow @CertPunch and visit certpunch.com for more certification practice exams and study content.
Prefer hands-on? Take this round as an interactive practice test — answer every question, get instant feedback, and see your score: Start the dbt Analytics Engineering Certification practice test →
What you will practice
- In a dbt unit test, what does the given block specify?
- What dbt artifact is primarily used for state comparison when running Slim CI?
- A developer wants to test changes to fct_reviews locally without building all 15 upstream models from scratch…
- What is an exposure in dbt?
- Which of the following best describes a macro in dbt?
- What are the three possible values for the access config on a dbt model?
Answers and explanations
Tap a question to expand the answer and the exam reasoning. Try to commit to your own pick first.
Q1. In a dbt unit test, what does the given block specify?
Answer: D. The mock input data that replaces the actual ref() and source() inputs during testing
The given block defines mock data that replaces actual ref and source inputs for isolated testing. The expect block is the main distractor, but it defines the expected output rows rather than the inputs.
Q2. What dbt artifact is primarily used for state comparison when running Slim CI?
Answer: D. manifest.json
The manifest file provides a complete project representation needed for state comparison. Run results are the main distractor, but they only contain execution outcomes rather than the full project structure required for diffing.
Q3. A developer wants to test changes to fct_reviews locally without building all 15 upstream models from scratch. Their company stores production artifacts in S3, which have been downloaded to ./prod-artifacts/. Which command allows fct_revie…
Answer: A. dbt run –select fct_reviews –defer –state ./prod-artifacts
Combining defer with the state flag resolves upstream refs to production objects defined in the artifacts. Option D is a strong distractor, but the plus symbol forces local builds of those upstream models.
Q4. What is an exposure in dbt?
Answer: D. A YAML declaration of a downstream consumer of dbt models, such as a dashboard or ML model
Exposures are yaml declarations defining downstream consumers of your models, like dashboards. The main distractor refers to public models, which is a project governance feature rather than a lineage documentation tool.
Q5. Which of the following best describes a macro in dbt?
Answer: B. A reusable Jinja code block defined in the macros/ directory, callable from models, tests, or other macros
Macros are reusable Jinja code blocks defined in the macros directory that accept arguments and can be called from models or tests. Do not confuse them with stored procedures; macros compile into your SQL rather than existing in the warehouse.
Q6. What are the three possible values for the access config on a dbt model?
Answer: C. private, protected, public
The three access levels are private, protected, and public. Protected is the default, allowing references within the same project. Public allows cross-project references, while private restricts access exclusively to models in the same group.
Q7. What type of error does dbt report when the Jinja compiles successfully but the database rejects the resulting SQL?
Answer: A. Database Error
A Database Error occurs when Jinja compilation succeeds but the warehouse rejects the SQL. Use this to distinguish from Compilation Errors, which happen locally when Jinja fails to render before hitting the warehouse.
Q8. What is the difference between the target/compiled/ and target/run/ directories?
Answer: D. compiled/ contains the pure SELECT with Jinja resolved; run/ contains the full DDL-wrapped SQL sent to the database
The compiled directory contains pure SELECT statements with Jinja resolved, useful for debugging. The run directory contains the full wrapped SQL sent to the warehouse, including DDL commands like create table, representing actual execution.
Q9. Which cron expression schedules a job to run every weekday (Monday through Friday) at 6:00 AM UTC?
Answer: C. 0 6 * * 1-5
The cron expression 0 6 star star 1-5 means minute zero, hour six, and days Monday through Friday. Remember the five field order for scheduling deployments in dbt Cloud jobs.
Q10. What does the –defer flag do in a Slim CI pipeline?
Answer: D. It tells dbt to use production database objects for any ref() not being built in the current run
The defer flag resolves ref calls for unselected models to their production objects. Skipping unchanged models is the main distractor, but that behavior is handled by the state modified selector.
More dbt Analytics Engineering Certification drills and other practice exams are on @CertPunch. New rounds drop every few days at certpunch.com.