Presented at Airflow Summit 2024

Behaviour Driven Development can, in the simplest of terms, be described as Test Driven Development, only readable. It is of course more than that, but that is not the aim of this talk. This talk aims to show:

  • How to write tests before you write a single line of Airflow code

  • Create reusable and readable steps for setting up tests, in a given-when-then manner.

  • Test rendering and execution of your DAG’s tasks

  • Real world examples from a monorepo containing multiple Airflow projects

Written only with pytest, and some code I stole from smart people in github.com/apache/airflow/tests