close
The Wayback Machine - https://web.archive.org/web/20211006170243/https://testandcode.com/

Test & Code

Python Testing, Software Engineering, Packaging, Development, Deployment, and generally being a software dev.

About the show

Test & Code is a weekly podcast hosted by Brian Okken.
The show covers a wide array of topics including software engineering, development, testing, Python programming, and many related topics.
When we get into the implementation specifics, that's usually Python, such as Python packaging, tox, pytest, and unittest. However, well over half of the topics are language agnostic, such as data science, DevOps, TDD, public speaking, mentoring, feature testing, NoSQL databases, end to end testing, automation, continuous integration, development methods, Selenium, the testing pyramid, and DevOps.

Test & Code on social media

Episodes

  • 164: Debugging Python Test Failures with pytest

    September 14th, 2021  |  13 mins 17 secs
    debugging, pytest, python, software testing

    An overview of the pytest flags that help with debugging.

  • 163: pip install ./local_directory - Stéphane Bidoul

    August 20th, 2021  |  29 mins 39 secs
    packaging, pip, python

    pip : "pip installs packages" or maybe "Package Installer for Python"
    pip is an invaluable tool when developing with Python.
    You can use pip to install Python packages from pypi.org, or a different index, or a local directory.
    The way pip installs from a local directory is about to change, and the story is fascinating.

  • 162: Flavors of TDD

    August 3rd, 2021  |  22 mins 44 secs

    What flavor of TDD do you practice?
    In this episode we talk about Classical vs Mockist TDD, Detroit vs London, Static vs Behavior, Inside Out, Outside In, Double Loop TDD, BDD, FDD, Tracer Bullets, Rules of TDD, Team Structure, Lean TDD and so much more.

  • 161: Waste in Software Development

    July 20th, 2021  |  18 mins 49 secs
    agile, lean, value, waste

    Software development processes create value, and have waste, in the Lean sense of the word waste.
    Lean manufacturing and lean software development changed the way we look at value and waste.
    This episode looks at lean definitions of waste, so we can see it clearly when we encounter it.

  • 160: DRY, WET, DAMP, AHA, and removing duplication from production code and test code

    July 8th, 2021  |  14 mins 40 secs

    Should your code be DRY or DAMP or something completely different?
    How about your test code? Do different rules apply?
    Wait, what do all of these acronyms mean?
    We'll get to all of these definitions, and then talk about how it applies to both production code and test code in this episode.

  • 159: Python, pandas, and Twitter Analytics - Matt Harrison

    July 2nd, 2021  |  47 mins 51 secs
    data analytics, jupyter, pandas, python, twitter analytics

    When learning data science and machine learning techniques, you need to work on a data set.
    Matt Harrison had a great idea: Why not use your own Twitter analytics data?
    So, he did that with his own data, and shares what he learned in this episode, including some of his secrets to gaining followers.

  • 158: TDD in Swift - Gio

    June 18th, 2021  |  43 mins 20 secs
    software testing, swift, tdd

    Iterative processes that include writing test code and production code together, such as TDD, help make coding fun. Gio Lodi, author of TDD in Swift, joins the show to discuss Test Driven Development, software workflows, bottom up vs top down, rapid feedback, developer vs customer facing tests, and more.

  • 157: pre-commit - Anthony Sottile

    June 11th, 2021  |  41 mins 40 secs
    ci, code formatters, linters

    pre-commit started as a framework for running linters and code formatters during git actions via git hooks. It's grown and expanded and now supports an extensive list of languages and actions and manual running of actions. But even at it's core, it's great for letting computers nitpick about whitespace and formatting, so that code reviews can focus on architecture and design.

    Anthony Sottile discusses pre-commit, for using locally by developers, and pre-commit.ci, which can run actions during merge requests.

  • 156: Flake8: Python linting framework with Pyflakes, pycodestyle, McCabe, and more - Anthony Sottile

    June 3rd, 2021  |  22 mins 54 secs
    flake8, linting, mccabe, pycodestyle, pyflakes, python

    Flake8 is a command-line tool for linting Python projects.
    By default, it includes lint checks provided Pyflakes, pycodestyle, and McCabe
    But what does all of that mean?
    Anthony Sottile is a maintainer of flake8 and has kindly offered to explain it to us.

  • 155: Four Questions to Ask Frequently During Software Projects - Tim Ottinger

    May 28th, 2021  |  22 mins 48 secs
    planning, software development, strategy

    Tim Ottinger has four questions that work great in many situations, from doing homework, to cooking, to writing code, to entire software projects.

    They are actually awesome questions to ask during a software project.

    We discuss the questions, where they came from, and look at some uses in software.

  • 154: Don't Mock your Database - Jeff Triplett

    May 21st, 2021  |  31 mins 39 secs
    databases, django, mocking, pytest, python, software testing

    You need tests for your web app. And it has a database. What do you do with the database during testing? Should you use the real thing? or mock it? Jeff Triplett says don't mock it.

    In this episode, we talk with Jeff about testing web applications, specifically Django apps, and of course talk about the downsides of database mocking.

  • 153: Playwright for Python: end to end testing of web apps - Ryan Howard

    May 13th, 2021  |  31 mins 29 secs
    end to end, software testing, web app

    Playwright is an end to end automated testing framework for web apps with Python support and even a pytest plugin.

  • 152: Python Packaging - Brett Cannon

    May 6th, 2021  |  49 mins 41 secs

    I always learn a lot when I talk to Brett, and this episode is no exception.
    We talk about the packaging workflow, tools, changes, pyproject.toml, flit, setuptools, and so much more.
    I hope you learn as much as I did in this great discussion.

  • 151: Python Adventure - Brandon Rhodes

    April 27th, 2021  |  56 mins 32 secs
    adventure, fortran, gaming, python

    Adventure, or Colossal Cave Adventure, was written between 1975 and 1977 in Fortran. Brandon Rhodes ported it to Python 3, initial release in 2011, and still maintains it. We talk to Brandon about this wonderful game.

  • 150: A Practical Testing Strategy

    April 15th, 2021  |  10 mins 34 secs
    software testing, testing strategy

    Coming up with a testing strategy doesn't have to be stressful. Prioritizing features to test, and generating test cases for each feature can be fairly quick and painless. This episode covers a strategy for both that can be applied to many types of software.

  • 149: I don't test my code, "crappy Python" is all I write - Corey Quinn

    March 30th, 2021  |  49 mins 35 secs
    software testing

    Corey Quinn is the Chief Cloud Economist at The Duckbill Group. He's also a podcaster and writes a newsletter. And he also automates things with Python. But he doesn't write tests. Let's find out why.