The Real Python Podcast

Behavior-Driven vs Test-Driven Development & Using Regex in Python


Listen Later

What is behavior-driven development, and how does it work alongside test-driven development? How do you communicate requirements between teams in an organization? Christopher Trudeau is back on the show this week, bringing another batch of PyCoder’s Weekly articles and projects.

In this episode, we expand on our software testing discussion from two weeks ago by adding behavior-driven development concepts. Christopher describes how BDD correlates with test-driven development and how it fosters collaboration within a team. We discuss building acceptance tests written in plain language and a handy tool for creating them.

We also share several other articles and projects from the Python community, including a news roundup, using regular expressions in Python, dealing with missing data in Polars, monkey patching in Django, first steps with Playwright, 3D printing giant things with a Python jigsaw generator, and a query language for JSON.

This episode is sponsored by Postman.

Course Spotlight: Regular Expressions and Building Regexes in Python

In this course, you’ll learn how to perform more complex string pattern matching using regular expressions, or regexes, in Python. You’ll also explore more advanced regex tools and techniques that are available in Python.

Topics:

  • 00:00:00 – Introduction
  • 00:02:21 – PyOhio 2025 July 26-27, 2025 Announced
  • 00:02:38 – Python 3.13.2 and 3.12.9 now available!
  • 00:02:52 – Django bugfix releases issued: 5.1.6, 5.0.12, and 4.2.19
  • 00:03:04 – DjangoCon Europe 2025 - Real Python Podcast
  • 00:05:24 – How to Deal With Missing Data in Polars
  • 00:10:29 – Monkey Patching Django
  • 00:15:50 – Sponsor: Postman
  • 00:16:42 – My First Steps With Playwright
  • 00:20:48 – How to Use Regular Expressions in Python
  • 00:25:55 – Video Course Spotlight
  • 00:27:25 – TDD vs. BDD: What’s the Difference?
  • 00:50:13 – 3D Printing Giant Things With a Python Jigsaw Generator
  • 00:53:58 – jmespath.py: Query Language for JSON
  • 00:55:58 – Thanks and goodbye
  • News:

    • PyOhio 2025 July 26-27, 2025 Announced
    • Python 3.13.2 and 3.12.9 now available!
    • Django bugfix releases issued: 5.1.6, 5.0.12, and 4.2.19
    • DjangoCon Europe 2025: Schedule
    • Topics:

      • How to Deal With Missing Data in Polars – In this tutorial, you’ll learn how to deal with missing data in Polars to ensure it doesn’t interfere with your data analysis. You’ll discover how to check for missing values, update them, and remove them.
      • Monkey Patching Django – The nanodjango project is a modification to the Django framework that lets you get started with a single file instead of the usual cookie-cutter directory structure. This is a detailed post explaining how nanodjango monkey patches Django to achieve this result.
      • Fake Django Objects With Factory Boy – The
      • My First Steps With Playwright – Playwright is a browser-based automation tool that can be used for web scraping or testing. This intro article shows you how to use the Python interface to access a page including using cookies.
      • How to Use Regular Expressions in Python – This post explores the basics of regular expressions in Python, as well as more advanced techniques. It includes real-world use cases and performance optimization strategies.
      • Discussion:

        • TDD vs. BDD: What’s the Difference? – Discover the key differences between TDD vs BDD, their workflows, tools, and best practices for developers.
        • Cucumber
        • Projects:

          • 3D Printing Giant Things With a Python Jigsaw Generator – This is a long, detailed article on 3D printing objects too large for the printer bed. The author has created dovetail joints to assemble pieces together. He wrote a Python program to automatically split up the larger model files into the jigsaw pieces needed to build a final result.
          • jmespath.py: Query Language for JSON
          • Additional Links:

            • Polars — DataFrames for the new era
            • nanodjango: Full Django in a single file - views, models, API ,with async support. Automatically convert it to a full project.
            • factory_boy library is a tool for managing fixtures for your tests. This article shows you how to use it with Django.
            • trimesh 4.6.2 documentation
            • Email::RFC822::Address - Regex Recipe
            • Level up your Python skills with our expert-led courses:

              • Regular Expressions and Building Regexes in Python
              • Test-Driven Development With pytest
              • How to Set Up a Django Project
              • Support the podcast & join our community of Pythonistas

                ...more
                View all episodesView all episodes
                Download on the App Store

                The Real Python PodcastBy Real Python

                • 4.7
                • 4.7
                • 4.7
                • 4.7
                • 4.7

                4.7

                139 ratings


                More shows like The Real Python Podcast

                View all
                The Changelog: Software Development, Open Source by Changelog Media

                The Changelog: Software Development, Open Source

                288 Listeners

                Software Engineering Daily by Software Engineering Daily

                Software Engineering Daily

                624 Listeners

                Talk Python To Me by Michael Kennedy

                Talk Python To Me

                580 Listeners

                Soft Skills Engineering by Jamison Dance and Dave Smith

                Soft Skills Engineering

                289 Listeners

                Super Data Science: ML & AI Podcast with Jon Krohn by Jon Krohn

                Super Data Science: ML & AI Podcast with Jon Krohn

                303 Listeners

                Python Bytes by Michael Kennedy and Brian Okken

                Python Bytes

                213 Listeners

                Syntax - Tasty Web Development Treats by Wes Bos & Scott Tolinski - Full Stack JavaScript Web Developers

                Syntax - Tasty Web Development Treats

                989 Listeners

                Darknet Diaries by Jack Rhysider

                Darknet Diaries

                8,086 Listeners

                Tech Brew Ride Home by Morning Brew

                Tech Brew Ride Home

                968 Listeners

                Practical AI by Practical AI LLC

                Practical AI

                198 Listeners

                AWS Podcast by Amazon Web Services

                AWS Podcast

                207 Listeners

                Django Chat by William Vincent and Carlton Gibson

                Django Chat

                75 Listeners

                Last Week in AI by Skynet Today

                Last Week in AI

                311 Listeners

                Machine Learning Street Talk (MLST) by Machine Learning Street Talk (MLST)

                Machine Learning Street Talk (MLST)

                95 Listeners

                The Pragmatic Engineer by Gergely Orosz

                The Pragmatic Engineer

                70 Listeners