all written video podcast

  • 238: So Long, and Thanks for All the Fish - Brian Okken

    238: So Long, and Thanks for All the Fish - Brian Okken

    2025-08-15
    A farewell to a fun 10 years.Also, I should have tested it better. :)In the audio I got the numbers wrong.  Doh!This is episode 238, not 237. Oh well.I'll still be around, of course, at:pythontest.com - where I write about developing software with...
  • 237: FastAPI Cloud - Sebastián Ramírez - Brian Okken

    237: FastAPI Cloud - Sebastián Ramírez - Brian Okken

    2025-08-11
    In this episode, Brian interviews Sebastián Ramírez, creator of FastAPI, about its rapid rise in developer popularity and the launch of FastAPI Cloud. Sebastian explains how FastAPI Cloud addresses deployment challenges small teams face. He shares his...
  • 236: Git Tips for Testing - Adam Johnson - Brian Okken

    236: Git Tips for Testing - Adam Johnson - Brian Okken

    2025-07-30
    In this episode, host Brian Okken and guest Adam Johnson explore essential Git features, highlighted by Adam's updated book, "Boost Your Git DX." Key topics include "cherry picking" for selective commits"git stash" for...
  • 235: pytest-django - Adam Johnson - Brian Okken

    235: pytest-django - Adam Johnson - Brian Okken

    2025-07-22
    In this episode, special guest Adam Johnson joins the show and examines pytest-django, a popular plugin among Django developers. He highlights its advantages over the built-in unittest framework, including improved test management and debugging. Adam...
  • 234: pytest-metadata - provides access to test session metadata - Brian Okken

    234: pytest-metadata - provides access to test session metadata - Brian Okken

    2025-05-07
    pytest-metadata is described as a plugin for pytest that provides access to test session metadata. That is such a humble description for such a massively useful plugin. If you're already using pytest-html, you have pytest-metadata already...
  • 233: pytest-check - allow multiple failures per test - Brian Okken

    233: pytest-check - allow multiple failures per test - Brian Okken

    2025-05-02
    pytest-check is a pytest plugin that allows multiple failures per test.Normally, a test function will fail and stop running with the first failed assert. That's totally fine for tons of kinds of software tests. However, there are times where...
  • 232: The role of AI in software testing - Anthony Shaw - Brian Okken

    232: The role of AI in software testing - Anthony Shaw - Brian Okken

    2025-04-25
    AI is helping people write code.  Tests are one of those things that some people don't like to write.   Can AI play a role in creating automated software tests?  Well, yes. But it's a nuanced yes.  Anthony Shaw comes on the show to discuss the...
  • 231: pytest-repeat - works fine on Python 3.14 - Brian Okken

    231: pytest-repeat - works fine on Python 3.14 - Brian Okken

    2025-04-10
    pytest-repeat is a pytest plugin that makes it easy to repeat a single test, or multiple tests, a specific number of times.  works fine on Python 3.14is tested on Python 3.9-3.14probably works fine still on 3.7 & 3.8This episode also discusses the...
  • 230: Python 3.14 won't repeat with pytest-repeat - Brian Okken

    230: Python 3.14 won't repeat with pytest-repeat - Brian Okken

    2025-04-01
    pytest-repeat is a pytest plugin that makes it easy to repeat a single test, or multiple tests, a specific number of times.  Note: This was an April Fools attempt, so the statement ..."Unfortunately, it doesn't seem to work with Python 3.14,...
  • 229: pytest-html - a plugin that generates HTML reports for test results - Brian Okken

    229: pytest-html - a plugin that generates HTML reports for test results - Brian Okken

    2025-03-27
    pytest-html has got to be one of my all time favorite plugins. pytest-html is a plugin for pytest that generates a HTML report for test results. This episode digs into some of the super coolness of pytest-html.pytest-htmlrepo readme with...
  • 228: pytest-md and pytest-md-report: Markdown reports for pytest - Brian Okken

    228: pytest-md and pytest-md-report: Markdown reports for pytest - Brian Okken

    2025-02-28
    Markdown reports as either text or markdown tables.Two fun plugins discussed.Links:pytest-md-reportpytest-mdTop pytest Plugins
  • 227: Mocking in Python with unittest.mock  -  Michael Foord - Brian Okken

    227: Mocking in Python with unittest.mock - Michael Foord - Brian Okken

    2025-02-07
    This episode is a replay of a 2021 interview I did with Michael Foord.We lost Michael in January, and I'd like to revisit this interview as a tribute. Michael Foord was a pivotal figure in the Python community and the creator of the mock library...
  • 226: pytest-mock : Mocking in pytest - Brian Okken

    226: pytest-mock : Mocking in pytest - Brian Okken

    2025-01-31
    pytest-mock is currently the #3 pytest plugin. pytest-mock is a wrapper around unittest.mock.In this episode:Why the pytest-mock plugin is awesomeWhat is mocking, patching, and monkey patchingWhat, if any, is the difference between mock, fake, spy,...
  • 225: pytest-cov : The pytest plugin for measuring coverage - Brian Okken

    225: pytest-cov : The pytest plugin for measuring coverage - Brian Okken

    2025-01-23
    pytest-cov is a pytest plugin that helps produce coverage reports using Coverage.py.In this episode, we'll discuss:what Coverage.py iswhy you should measure code coverage on both your source and test codewhat pytest-cov isextra features pytest-cov...
  • 224: pytest plugins - a full series - Brian Okken

    224: pytest plugins - a full series - Brian Okken

    2025-01-10
    This episode kicks off a series on pytest plugins.In this episode:Introduction to pytest pluginsThe pytest.org pytest plugin listFinding pytest related packages on PyPIThe Top pytest plugins list on pythontest.comExploring popular pluginsLearning from...
  • 223: Writing Stuff Down is a Super Power - Brian Okken

    223: Writing Stuff Down is a Super Power - Brian Okken

    2024-11-16
    Taking notes well can help to listen better, remember things, show respect, be more accountable, free up mind space to solve problems.This episode discussesthe benefits of writing things downpreparing for a meetingtaking notes in meetingsreviewing...
  • 222: Import within a Python package - Brian Okken

    222: Import within a Python package - Brian Okken

    2024-09-07
    In this episode we're talking about importing part of a package into another part of the same package.We'll look at: `from . import module` and `from .module import something`and also:  `import package` to access the external API from with the...
  • 221: How to get pytest to import your code under test - Brian Okken

    221: How to get pytest to import your code under test - Brian Okken

    2024-06-03
    We've got some code we want to test, and some tests.The tests need to be able to import the code under test, or at least the API to it, in order to run tests against it.How do we do that? How do we set things up so that our tests can import our...
  • 220: Getting the most out of PyCon, including juggling -  Rob Ludwick - Brian Okken

    220: Getting the most out of PyCon, including juggling - Rob Ludwick - Brian Okken

    2024-05-04
    PyCon US is just around the corner.  I've asked Rob Ludwick to come on the show to discuss how to get the most out of your PyCon experience. There's a lot to do. A lot of activities to juggle, including actual juggling, which is where we start...
  • 219: Building Django Apps & SaaS Pegasus - Cory Zue - Brian Okken

    219: Building Django Apps & SaaS Pegasus - Cory Zue - Brian Okken

    2024-04-23
    I'm starting a SaaS project using Django, and there are tons of decisions right out of the gate. To help me navigate these decisions, I've brought on Cory Zue.   Cory is the creator of SaaS Pegasus, and has tons of experience with Django.Some...
  • 218: Balancing test coverage with test costs -  Nicole Tietz-Sokolskaya - Brian Okken

    218: Balancing test coverage with test costs - Nicole Tietz-Sokolskaya - Brian Okken

    2024-04-17
    Nicole is a software engineer and writer, and recently wrote about the trade-offs we make when deciding which tests to write and how much testing is enough.We talk about:Balancing schedule vs testingHow much testing is the right about of testingShould...
  • 217: Podcasting / SaaS / Work Life Balance - Justin Jackson - Brian Okken

    217: Podcasting / SaaS / Work Life Balance - Justin Jackson - Brian Okken

    2024-04-11
    If you've ever thought about starting a podcast or a SaaS project, you'll want to listen to this episode. Justin is one of the people who motivated me to get started podcasting. He's also running a successful SaaS company, transistor.fm,...
  • 216: ruff, uv, and Astral: Python tooling, much faster, with Rust - Brian Okken

    216: ruff, uv, and Astral: Python tooling, much faster, with Rust - Brian Okken

    2024-03-11
    Charlie Marsh and team are using Rust to make Python tooling faster.Ruff can take the place of Flake8, isort, and Black, and so much more.uv can take the place of pip, pip-tools, and virtualenvAstral is Charlie's venture backed company, and what...
  • 215: Staying Technical as a Manager - Brian Okken

    215: Staying Technical as a Manager - Brian Okken

    2024-02-25
    Software engineers that move into leadership roles have a struggle between learning leadership skills, maintaining technical skills, and learning new leadership and technical skills. Matt Makai went from individual contributor to developer relations...
  • 214: Python Testing in VS Code - Brian Okken

    214: Python Testing in VS Code - Brian Okken

    2024-02-06
    If you haven't tried running automated tests, especially with pytest,  in VS Code recently, you should take another look.The Python for VS Code interface for testing, especially for pytest, has changed recently. On this episode we discuss the...
  • 213: Repeating Tests - Brian Okken

    213: Repeating Tests - Brian Okken

    2024-01-19
    If a test fails in a test suite, I'm going to want to re-run the test. I may even want to re-run a test, or a subset of the suite, a bunch of times.  There are a few pytest plugins that help with...
  • 212: Canon TDD - by Kent Beck - Brian Okken

    212: Canon TDD - by Kent Beck - Brian Okken

    2024-01-13
    In 2002, Kent Beck released a book called  "Test Driven Development by Example".In December of 2023, Kent wrote an article called "Canon TDD".With Kent's permission, this episode contains the full content of the article.Brian's...
  • 211: Stamp out test dependencies with pytest plugins - Brian Okken

    211: Stamp out test dependencies with pytest plugins - Brian Okken

    2023-12-15
    We want to be able to run tests in a suite, and debug them in isolation, and have the behavior be the same.  If the behavior is different in isolation vs in a suite, it's a nightmare to debug. In this episode, we'll talk about:Causes of...
  • 210: TDD - Refactor while green - Brian Okken

    210: TDD - Refactor while green - Brian Okken

    2023-11-29
    Test Driven Development. Red, Green, Refactor. Do we have to do the refactor part? Does the refactor at the end include tests? Or can I refactor the tests at any time?Why is refactor at the end? This episode is to talk about this with a an example.
  • 209: Testing argparse Applications - Brian Okken

    209: Testing argparse Applications - Brian Okken

    2023-11-16
    How do you test the argument parsing bit of an application that uses argparse?This episode covers:Design for Test: Structuring your app or script so it's easier to test.pytest & capsys for testing stdoutAdding debug and preview flags for...
  • 208: Tests with no assert statements - Brian Okken

    208: Tests with no assert statements - Brian Okken

    2023-10-29
    Why on earth would you want to write a test with no assert statements?After all, aren't assert statements how you decide wether a test passes or fails?In this episode, we walk through a handful of useful examples of test code without asserts.We...
  • 207: pytest course, pytest-repeat and pytest-flakefinder - Brian Okken

    207: pytest course, pytest-repeat and pytest-flakefinder - Brian Okken

    2023-09-25
    New course: "The Complete pytest Course"pytest-repeat, which I'm starting to contribute toGive `--repeat-scope` a try. You can use it to change from repeating every test to repeating the session, module, or class.pytest-flakefinder, which...
  • 206: TDD in Context - Brian Okken

    206: TDD in Context - Brian Okken

    2023-08-23
    TDD (Test Driven Development) started from Test First Programming, and has been around at least since the 90's. However, software tools and available CI systems have changed quite a bit since then. Maybe it's time to re-examine the...
  • 205: pytest autouse fixtures - Brian Okken

    205: pytest autouse fixtures - Brian Okken

    2023-07-31
    On a recent episode of PythonBytes, I suggested it's hard to come up with good examples for pytest autouse fixtures, as there aren't very many good reasons to use them.  James Falcon was kind enough to reach out and correct me. In this...
  • 204: Free Your Inner Nonfiction Writer - Johanna Rothman - Brian Okken

    204: Free Your Inner Nonfiction Writer - Johanna Rothman - Brian Okken

    2023-07-18
    Learn how to write nonfiction fast and well.Johanna Rothman joins the show to discuss writing nonfiction.Johanna's book: Free Your Inner Nonfiction Writer
  • 203: Open Source at Intel - Brian Okken

    203: Open Source at Intel - Brian Okken

    2023-07-17
    Open Source is important to Intel and has been for a very long time.Joe Curley, vice president and general manager of software products and ecosystem, and Arun Gupta, vice president and general manager for open ecosystems, join the show to discuss...
  • 202: Using Towncrier to Keep a Changelog - Hynek Schlawack - Brian Okken

    202: Using Towncrier to Keep a Changelog - Hynek Schlawack - Brian Okken

    2023-05-31
    Hynek joins the show to discuss towncrier. At the top of the towncrier documentation, it says "towncrier is a utility to produce useful, summarized news files (also known as changelogs) for your project."Towncrier is used by "Twisted,...
  • 201: Avoid merge conflicts on your CHANGELOG with scriv - Ned Batchelder - Brian Okken

    201: Avoid merge conflicts on your CHANGELOG with scriv - Ned Batchelder - Brian Okken

    2023-05-25
    Last week we talked about the importance of keeping a changelog. This week we talk with Ned Batchelder about scriv, a tool to help maintain that changelog.Scriv "is a command-line tool for helping developers maintain useful changelogs. It manages...
  • 200: Keep a CHANGELOG - Brian Okken

    200: Keep a CHANGELOG - Brian Okken

    2023-05-19
    A changelog is a file which contains a curated, chronologically ordered list of notable changes for each version of a project. This episode is about what a changelog is, with an interview with Olivier Lacan, creator of keepachangelog.com. The next two...
  • 199: Is Azure Right for a Side Project? - Pamela Fox - Brian Okken

    199: Is Azure Right for a Side Project? - Pamela Fox - Brian Okken

    2023-05-04
    For a web side project to go from "working on desktop" to "live in the cloud", one decision that needs to be made is where to host everything. One option is Microsoft Azure. Lots of corporate sites use it. Is it right for side...
  • 198: Testing Django Web Applications - Carlton Gibson, Will Vincent - Brian Okken

    198: Testing Django Web Applications - Carlton Gibson, Will Vincent - Brian Okken

    2023-04-27
    Django has some built in ways to test your application. There's also pytest-django and other plugins that help with testing. Carlton Gibson and Will Vincent from the Django Chat Podcast join the show to discuss how to get started testing your...
  • 197: Python project trove classifiers - Do you need this bit of pyproject.toml metadata? - Brett Cannon - Brian Okken

    197: Python project trove classifiers - Do you need this bit of pyproject.toml metadata? - Brett Cannon - Brian Okken

    2023-04-04
    Classifiers are one bit of Python project metadata that predates PyPI. Classifiers are weird. They were around in setuptools days, and are still here with pyproject.toml. What are they? Why do we need them? Do we need them?Which classifiers should I...
  • 196: I am not a supplier - Thomas Depierre - Brian Okken

    196: I am not a supplier - Thomas Depierre - Brian Okken

    2023-03-30
    Should we think of open source components the same way we think of physical parts for manufactured goods? There are problems with supply chain analogy when applied to software. Thomas Depierre discusses some of those issues in this episode. Links:I am...
  • 195: What would you change about pytest? -  Anthony Sottile - Brian Okken

    195: What would you change about pytest? - Anthony Sottile - Brian Okken

    2023-03-08
    Anthony Sottile and Brian discuss changes that would be cool for pytest, even unrealistic changes. These are changes we'd make to pytest if we didn't ahve to care about backwards compatibilty.Anthony's list:The import systemMulti-process...
  • 193: The Good Research Code Handbook - Patrick Mineault - Brian Okken

    193: The Good Research Code Handbook - Patrick Mineault - Brian Okken

    2022-08-30
    I don't think it's too much of a stretch to say that software is part of most scientific research now. From astronomy, to neuroscience, to chemistry, to climate models.  If you work in research that hasn't been affected by software yet,...
  • 192: Learn to code through game development with PursuedPyBear - Piper Thunstrom - Brian Okken

    192: Learn to code through game development with PursuedPyBear - Piper Thunstrom - Brian Okken

    2022-08-06
    The first game I remember coding, or at least copying from a magazine, was in Basic. It was Lunar Lander. Learning to code a game is a way that a lot of people get started and excited about programming. Of course, I don't recommend Basic. Now...
  • 191: Running your own site for fun and absolutely no profit whatsoever - Brian Wisti - Brian Okken

    191: Running your own site for fun and absolutely no profit whatsoever - Brian Wisti - Brian Okken

    2022-07-01
    Having a personal site is a great playground for learning tons of skills. Brian Wisti discusses the benefits of running a his own blog over the years.Links:Random GeekeryJamstackEleventyNetlifyPlausible AnalyticspytestBeautiful Souppyinvoke -...
  • 190: Testing PyPy - Carl Friedrich Bolz-Tereick - Brian Okken

    190: Testing PyPy - Carl Friedrich Bolz-Tereick - Brian Okken

    2022-06-21
    PyPy is a fast, compliant alternative implementation of Python. cPython is implemented in C. PyPy is implemented in Python. What does that mean? And how do you test something as huge as an alternative implementation of Python?Special Guest: Carl...
  • 189: attrs and dataclasses - Hynek Schlawack - Brian Okken

    189: attrs and dataclasses - Hynek Schlawack - Brian Okken

    2022-06-07
    In Python, before dataclasses, we had attrs. Before attrs, it wasn't pretty.The story of attrs and dataclasses is actually intertwined.  They've built on each other. And in the middle of it all, Hynek.Hynek joins the show today to discuss some...
  • 188: Python's Rich, Textual, and Textualize - Innovating the CLI - Brian Okken

    188: Python's Rich, Textual, and Textualize - Innovating the CLI - Brian Okken

    2022-05-17
    Will McGugan has brought a lot of color to CLIs within Python due to Rich.  Then Textual started rethinking full command line applications, including layout with CSS. And now Textualize, a new startup, is bringing CLI apps to the...
  • 187: Teaching Web Development, including Front End Testing - Brian Okken

    187: Teaching Web Development, including Front End Testing - Brian Okken

    2022-05-13
    When you are teaching someone web development skills, when is the right time to start teaching code quality and testing practices?Karl Stolley believes it's never too early. Let's hear how he incorporates code quality in his courses.Our...
  • 186: Developer and Team Productivity - Brian Okken

    186: Developer and Team Productivity - Brian Okken

    2022-05-12
    Being productive is obviously a good thing. Can we measure it? Should we measure it? There's been failed attempts, like lines of code, etc. in the past. Currently, there are new tools to measure productivity, like using git metrics.Nick Hodges...
  • 185: Python + Django + Rich + Testing == Awesome - Brian Okken

    185: Python + Django + Rich + Testing == Awesome - Brian Okken

    2022-05-11
    Django has a handful of console commands to help manage and develop sites.  django-rich adds color and nice formatting. Super cool. In a recent release, django-rich also adds nice colorized tracebacks to the Django test runner. Links:django-rich ·...
  • 184: Twisted and Testing Event Driven / Asynchronous Applications - Glyph - Brian Okken

    184: Twisted and Testing Event Driven / Asynchronous Applications - Glyph - Brian Okken

    2022-03-21
    Twisted has been supporting asynchronous / event driven applications way before asyncio. Twisted, and Glyph, have also been encouraging automated tests for a very long time.Twisted uses a technique that should be usable by other applications, even...
  • 183: Managing Software Teams - Ryan Cheley - Brian Okken

    183: Managing Software Teams - Ryan Cheley - Brian Okken

    2022-03-16
    Ryan Cheley joins me today to talk about some challenges of managing software teams, and how to handle them. We end up talking about a lot of skills that are excellent for software engineers as well as managers.Some topics discussed:handling code...
  • 182: An Unorthodox Technical Interview and Hiring Process - Nathan Aschbacher - Brian Okken

    182: An Unorthodox Technical Interview and Hiring Process - Nathan Aschbacher - Brian Okken

    2022-03-08
    Don't you just love technical interviews, with someone who just saw your resume or CV 5 minutes ago asking you to write some code on a whiteboard. Probably code that has nothing to do with anything you've done before or anything you will do at...
  • 181: Boost Your Django DX - Adam Johnson - Brian Okken

    181: Boost Your Django DX - Adam Johnson - Brian Okken

    2022-02-28
    We talk with Adam Johnson about his new book, "Boost Your Django DX". Developer experience includes tools and practices to make developers more effective and efficient, and just plain make software development more fun and satisfying.  One of...
  • 180: Lean TDD - Brian Okken

    180: Lean TDD - Brian Okken

    2022-02-21
    Lean TDD is an attempt to reconcile some conflicting aspects of Test Driven Development and Lean Software Development.I've mentioned Lean TDD on the podcast a few times and even tried to do a quick outline at the end of episode 162.This episode is...
  • 179: Exploratory Testing - Brian Okken

    179: Exploratory Testing - Brian Okken

    2022-02-08
    Exploratory testing is absolutely an essential part of a testing strategy. This episode discusses what exploratory testing is, its benefits, and how it fits within a framework of relying on automated tests for most of our testing.
  • 178: The Five Factors of Automated Software Testing - Brian Okken

    178: The Five Factors of Automated Software Testing - Brian Okken

    2022-01-31
    "There are five practical reasons that we write tests. Whether we realize it or not, our personal testing philosophy is based on how we judge the relative importance of these reasons." - Sarah MeiThis episode discusses the factors.Sarah's...
  • 177: Unit Test vs Integration Test and The Testing Trophy - Brian Okken

    177: Unit Test vs Integration Test and The Testing Trophy - Brian Okken

    2022-01-27
    A recent Twitter thread by Simon Willison reminded me that I've been meaning to do an episode on the testing trophy. This discussion is about the distinction between unit and integration tests, what those terms mean, and where we should spend our...
  • 176: SaaS Side Projects - Brandon Braner - Brian Okken

    176: SaaS Side Projects - Brandon Braner - Brian Okken

    2022-01-18
    The idea of having a software as a service product sound great, doesn't it? Solve a problem with software. Have a nice looking landing page and website. Get paying customers. Eventually have it make enough revenue so you can turn it into your...
  • 175: Who Should Do QA? - Brian Okken

    175: Who Should Do QA? - Brian Okken

    2022-01-12
    Who should do QA?How does that change with different projects and teams?What does "doing QA" mean, anyway?Answering these questions are the goals of this episode.Links:Test Automation - Who Should be Involved? | Thoughtworks
  • 174: pseudo-TDD - Paul Ganssle - Brian Okken

    174: pseudo-TDD - Paul Ganssle - Brian Okken

    2021-12-22
    In this episode, I talk with Paul Ganssle about a fun workflow that he calls pseudo-TDD. Pseudo-TDD is a way to keep your commit history clean and your tests passing with each commit. This workflow includes using pytest xfail and some semi-advanced...
  • 173: Why NOT unittest? - Brian Okken

    173: Why NOT unittest? - Brian Okken

    2021-12-17
    In the preface of "Python Testing with pytest" I list some reasons to use pytest, under a section called "why pytest?". Someone asked me recently, a different but related question "why NOT unittest?".unittest is an xUnit style...
  • 172: Designing Better Software with a Prototype Mindset - Brian Okken

    172: Designing Better Software with a Prototype Mindset - Brian Okken

    2021-11-30
    A prototype is a a preliminary model of something, from which other forms are developed or copied. In software, we think of prototypes as early things, or a proof of concept. We don't often think of prototyping during daily software development or...
  • 171: How and why I use pytest's xfail - Paul Ganssle - Brian Okken

    171: How and why I use pytest's xfail - Paul Ganssle - Brian Okken

    2021-11-22
    Paul Ganssle, is a software developer at Google, core Python dev, and open source maintainer for many projects, has some thoughts about pytest's xfail. He was an early skeptic of using xfail, and is now an proponent of the feature. In this...
  • 170: pytest for Data Science and Machine Learning - Prayson Daniel - Brian Okken

    170: pytest for Data Science and Machine Learning - Prayson Daniel - Brian Okken

    2021-11-17
    Prayson Daniel, a principle data scientist, discusses testing machine learning pipelines with pytest.Prayson is using pytest for some pretty cool stuff, including:unit tests, of coursetesting pipeline stagescounterfactual testingperformance testingAll...
  • 169: Service and Microservice Performance Monitoring - Omri Sass - Brian Okken

    169: Service and Microservice Performance Monitoring - Omri Sass - Brian Okken

    2021-11-11
    Performance monitoring and error detection is just as important with services and microservices as with any system, but with added complexity. Omri Sass joins the show to explain telemetry and monitoring of services and of systems with...
  • 168: Understanding Complex Code by Refactoring into Larger Functions - Brian Okken

    168: Understanding Complex Code by Refactoring into Larger Functions - Brian Okken

    2021-11-02
    To understand complex code, it can be helpful to remove abstractions, even if it results in larger functions. This episode walks through a process I use to refactor code that I need to debug and fix, but don't completely understand.
  • 167: React, TypeScript, and the Joy of Testing - Paul Everitt - Brian Okken

    167: React, TypeScript, and the Joy of Testing - Paul Everitt - Brian Okken

    2021-10-21
    Paul has a tutorial on testing and TDD with React and TypeScript.  We discuss workflow and the differences, similarities between testing with React/TypeScript and Python. We also discuss what lessons that we can bring from front end testing to Python...
  • 166: unittest expectedFailure and xfail - Brian Okken

    166: unittest expectedFailure and xfail - Brian Okken

    2021-10-14
    xfail isn't just for pytest tests. Python's unittest has @unittest.expectedFailure.In this episode, we cover:using @unittest.expectedFailurethe results of passing and failing tests with expectedFailureusing pytest as a test runner for...
  • 165: pytest xfail policy and workflow - Brian Okken

    165: pytest xfail policy and workflow - Brian Okken

    2021-10-07
    A discussion of how to use the xfail feature of pytest to help with communication on software projects.The episode covers:What is xfailWhy I use itUsing reason effectively by including issue tracking numbersUsing xfail_strictAdding --runxfail when...
  • 164: Debugging Python Test Failures with pytest - Brian Okken

    164: Debugging Python Test Failures with pytest - Brian Okken

    2021-09-14
    An overview of the pytest flags that help with debugging. From Chapter 13, Debugging Test Failures, of Python Testing with pytest, 2nd edition.pytest includes quite a few command-line flags that are useful for debugging. We talk about thes flags in...
  • 163: pip install ./local_directory - Stéphane Bidoul - Brian Okken

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

    2021-08-20
    pip : "pip installs packages" or maybe "Package Installer for Python" pip is an invaluable tool when developing with Python. A lot of people know pip as a way to install third party packages from pypi.org You can also use pip to...
  • 162: Flavors of TDD - Brian Okken

    162: Flavors of TDD - Brian Okken

    2021-08-03
    What flavor of TDD do you practice? In this episode we talk about:Classical vs Mockist TDDDetroit vs London (I actually refer to it in the episode as Chicago instead of Detroit. Oh well.)Static vs BehaviorInside Out vs Outside InDouble Loop...
  • 161: Waste in Software Development - Brian Okken

    161: Waste in Software Development - Brian Okken

    2021-07-20
    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...
  • 160: DRY, WET, DAMP, AHA, and removing duplication from production code and test code - Brian Okken

    160: DRY, WET, DAMP, AHA, and removing duplication from production code and test code - Brian Okken

    2021-07-08
    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...
  • 159: Python, pandas, and Twitter Analytics - Matt Harrison - Brian Okken

    159: Python, pandas, and Twitter Analytics - Matt Harrison - Brian Okken

    2021-07-02
    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,...
  • 158: TDD in Swift - Gio Lodi - Brian Okken

    158: TDD in Swift - Gio Lodi - Brian Okken

    2021-06-18
    Iterative processes that include writing test code and production code together, such as TDD, help make coding fun. All of us that care about developing quality code with the help of testing can learn from each other, regardless of programming...
  • 157: pre-commit - Anthony Sottile - Brian Okken

    157: pre-commit - Anthony Sottile - Brian Okken

    2021-06-11
    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...
  • 156: Flake8: Python linting framework with Pyflakes, pycodestyle, McCabe, and more - Anthony Sottile - Brian Okken

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

    2021-06-03
    Flake8 is a command-line tool for linting Python projects.  By default, it includes lint checks provided Pyflakes, pycodestyle, and McCabe It's also a platform, and allows plugins to extend the checks. Flake8 will run third-party extensions if...
  • 155: Four Questions to Ask Frequently During Software Projects - Tim Ottinger - Brian Okken

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

    2021-05-28
    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...
  • 154: Don't Mock your Database - Jeff Triplett - Brian Okken

    154: Don't Mock your Database - Jeff Triplett - Brian Okken

    2021-05-21
    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,...
  • 153: Playwright for Python: end to end testing of web apps - Ryan Howard - Brian Okken

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

    2021-05-13
    Playwright is an end to end automated testing framework for web apps with Python support and even a pytest plugin.Links:Playwright for PythonWhy Playwright?playwright-pytest
  • 152: Python Packaging - Brett Cannon - Brian Okken

    152: Python Packaging - Brett Cannon - Brian Okken

    2021-05-06
    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...
  • 151: Python Adventure - Brandon Rhodes - Brian Okken

    151: Python Adventure - Brandon Rhodes - Brian Okken

    2021-04-27
    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.YOU ARE STANDING AT THE END OF A...
  • 150: A Practical Testing Strategy - Brian Okken

    150: A Practical Testing Strategy - Brian Okken

    2021-04-15
    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...
  • 149: I don't test my code,

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

    2021-03-30
    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.Reason for the interview. Rough summary...
  • 148: Coverage.py and testing packages - Brian Okken

    148: Coverage.py and testing packages - Brian Okken

    2021-03-12
    How do you test installed packages using coverage.py? Also, a couple followups from last week's episode on using coverage for single file applications. Links:episode 147: Testing Single File Python Applications/Scripts with pytest and...
  • 147: Testing Single File Python Applications/Scripts with pytest and coverage - Brian Okken

    147: Testing Single File Python Applications/Scripts with pytest and coverage - Brian Okken

    2021-03-05
    Have you ever written a single file Python application or script? Have you written tests for it? Do you check code coverage?This is the topic of this weeks episode, spurred on by a listener question.The questions:For single file scripts, I'd like...
  • 146: Automation Tools for Web App and API Development and Maintenance - Michael Kennedy - Brian Okken

    146: Automation Tools for Web App and API Development and Maintenance - Michael Kennedy - Brian Okken

    2021-02-28
    Building any software, including web apps and APIs requires testing. There's automated testing, and there's manual testing. In between that is exploratory testing aided by automation tools. Michael Kennedy joins the show this week to share...
  • 145: For Those About to Mock - Michael Foord - Brian Okken

    145: For Those About to Mock - Michael Foord - Brian Okken

    2021-02-18
    A discussion about mocking in Python with the original contributor of unittest.mock, Michael Foord.Of course we discuss mocking and unittest.mock. We also discuss:testing philosophyunit testing and what a unit isTDDwhere Michael's towel is, and...
  • 144: TDD in Science - Martin Héroux - Brian Okken

    144: TDD in Science - Martin Héroux - Brian Okken

    2021-02-12
    Test Driven Development, TDD, is not easy to incorporate in your daily development. Martin and Brian discuss TDD and testing and Martin's experience with testing, TDD, and using it for code involved with scientific research. We discuss lots of...
  • 143: pytest markers - Anthony Sottile - Brian Okken

    143: pytest markers - Anthony Sottile - Brian Okken

    2021-02-07
    Completely nerding out about pytest markers with Anthony Sottile.Some of what we talk about:Running a subset of tests with markers.Using marker expressions with and, or, not, and parentheses.Keyword expressions also can use and, or, not, and...
  • 142: MongoDB - Mark Smith - Brian Okken

    142: MongoDB - Mark Smith - Brian Okken

    2021-01-25
    MongoDB is possibly the most recognizable NoSQL document database. Mark Smith, a developer advocate for MongoDB, answers my many questions about MongoDB. We cover some basics, but also discuss some advanced features that I never knew about before this...
  • 141: Visual Testing - Angie Jones - Brian Okken

    141: Visual Testing - Angie Jones - Brian Okken

    2020-12-30
    Visual Testing has come a long way from the early days of x,y mouse clicks and pixel comparisons. Angie Jones joins the show to discuss how modern visual testing tools work and how to incorporate visual testing into a complete testing strategy. Some...
  • 140: Testing in Scientific Research and Academia - Martin Héroux - Brian Okken

    140: Testing in Scientific Research and Academia - Martin Héroux - Brian Okken

    2020-12-18
    Scientists learn programming as they need it. Some of them learn it in college, but even if they do, that's not their focus. It's not surprising that sharing the software used for scientific research and papers is spotty, at best. And what...
  • 139: Test Automation: Shifting Testing Throughout the Software Lifecycle - Nalin Parbhu - Brian Okken

    139: Test Automation: Shifting Testing Throughout the Software Lifecycle - Nalin Parbhu - Brian Okken

    2020-12-04
    Talking with Nalin Parbhu about the software evolution towards more test automation and the creation of Infuse and useMango.We talk a software development and "shift left" where automated tests and quality checks have moved earlier into the...
  • 138: Mutation Testing in Python with mutmut - Anders Hovmöller - Brian Okken

    138: Mutation Testing in Python with mutmut - Anders Hovmöller - Brian Okken

    2020-11-19
    Your test suite tells you about the quality of your code under test. Mutation testing is a way to tell you about the quality of your test suite. Anders Hovmöller wrote mutmut for mutation testing in Python, and can be used with pytest, unittest, and...
  • 137: Become an Author - Matt Harrison interviews Brian Okken - Brian Okken

    137: Become an Author - Matt Harrison interviews Brian Okken - Brian Okken

    2020-11-05
    Matt Harrison, author of many Python books, is putting together a course, Effective Book Authoring, to help other people write and publish books. As part of this course, he's including interviews with people who have already written books,...
  • 136: Wearable Technology - Sophy Wong - Brian Okken

    136: Wearable Technology - Sophy Wong - Brian Okken

    2020-10-26
    Wearable technology is not just smart consumer devices like watches and activity trackers. Wearable tech also includes one off projects by designers, makers, and hackers and there are more and more people producing tutorials on how to get started....
  • 135: Speeding up Django Test Suites - Adam Johnson - Brian Okken

    135: Speeding up Django Test Suites - Adam Johnson - Brian Okken

    2020-10-20
    All test suites start fast. But as you grow your set of tests, each test adds a little bit of time to the suite.  What can you do about it to keep test suites fast?  Some things, like parallelization, are applicable to many domains.  What about, for...
  • 134: Business Outcomes and Software Development - Benjamin Harding - Brian Okken

    134: Business Outcomes and Software Development - Benjamin Harding - Brian Okken

    2020-10-12
    Within software projects, there are lots of metrics we could measure. But which ones really matter. Instead of a list, Benjamin Harding shares with us a way of thinking about business outcomes that can help us with every day decision making. We talk...
  • 133: Major League Hacking - Jon Gottfried - Brian Okken

    133: Major League Hacking - Jon Gottfried - Brian Okken

    2020-10-05
    Hackathons have been spreading around the world; many at university campuses. Major League Hacking, MLH, has been encouraging and helping hackathons.Hacking can be thought of as tinkering. Taking things apart and putting them back together as an...
  • 132: mocking in Python - Anna-Lena Popkes - Brian Okken

    132: mocking in Python - Anna-Lena Popkes - Brian Okken

    2020-09-28
    Using mock objects during testing in Python.Anna-Lena joins the podcast to teach us about mocks and using unittest.mock objects during testing. We discuss:the different styles of using mockspros and cons of mocksdependency injectionadapter patternmock...
  • 131: Test Smarter, Not Harder - Brian Okken

    131: Test Smarter, Not Harder - Brian Okken

    2020-09-21
    Some people avoid writing tests. Some drudge through it painfully. There is a better way. In this episode, I'm going to share some advice from Luke Plant on how to "Test Smarter, Not Harder".Links:Test smarter, not harder - lukeplant.me.uk...
  • 130: virtualenv activation prompt consistency across shells - an open source dev and test adventure - Brian Skinn - Brian Okken

    130: virtualenv activation prompt consistency across shells - an open source dev and test adventure - Brian Skinn - Brian Okken

    2020-09-13
    virtualenv supports six shells: bash, csh, fish, xonsh, cmd, posh. Each handles prompts slightly differently. Although the virtualenv custom prompt behavior should be the same across shells, Brian Skinn noticed inconsistencies. He set out to fix those...
  • 129: How to Test Anything - David Lord - Brian Okken

    129: How to Test Anything - David Lord - Brian Okken

    2020-09-07
    I asked people on twitter to fill in "How do I test _____?" to find out what people want to know how to test. Lots of responses. David Lord agreed to answer them with me. In the process, we come up with lots of great general advice on how to...
  • 128: pytest-randomly - Adam Johnson - Brian Okken

    128: pytest-randomly - Adam Johnson - Brian Okken

    2020-08-28
    Software tests should be order independent. That means you should be able to run them in any order or run them in isolation and get the same result.However, system state often gets in the way and order dependence can creep into a test suite. One way...
  • 127: WFH, WTF? - Tips and Tricks for Working From Home - Reuven Lerner & Julian Sequeira - Brian Okken

    127: WFH, WTF? - Tips and Tricks for Working From Home - Reuven Lerner & Julian Sequeira - Brian Okken

    2020-08-24
    Many people have been working from home now that are not used to working from home. Or at least are working from home more than they ever did before. That's definitely true for me. Even though I've been working from home since March, I wanted...
  • 126: Data Science and Software Engineering Practices ( and Fizz Buzz ) - Joel Grus - Brian Okken

    126: Data Science and Software Engineering Practices ( and Fizz Buzz ) - Joel Grus - Brian Okken

    2020-08-16
    Researches and others using data science and software need to follow solid software engineering practices. This is a message that Joel Grus has been promoting for some time.Joel joins the show this week to talk about data science, software...
  • 125: pytest 6 - Anthony Sottile - Brian Okken

    125: pytest 6 - Anthony Sottile - Brian Okken

    2020-08-07
    pytest 6 is out. Specifically, 6.0.1, as of July 31. And there's lots to be excited about. Anthony Sottile joins the show to discuss features, improvements, documentation updates and more.Full release notes / changelogSome of what we talk...
  • 124: pip dependency resolver changes - Brian Okken

    124: pip dependency resolver changes - Brian Okken

    2020-08-03
    pip is the package installer for Python. Often, when you run pip, especially the first time in a new virtual environment, you will see something like:WARNING: You are using pip version 20.1.1; however, version 20.2 is available. You should consider...
  • 123: GitHub Actions - Tania Allard - Brian Okken

    123: GitHub Actions - Tania Allard - Brian Okken

    2020-07-24
    Lots of Python projects are starting to use GitHub Actions for Continous Integration & Deployment (CI/CD), as well as other workflows.Tania Allard, a Senior Cloud Developer Advocate at Microsoft, joins the show to answer some of my questions...
  • 122: Better Resumes for Software Engineers - Randall Kanna - Brian Okken

    122: Better Resumes for Software Engineers - Randall Kanna - Brian Okken

    2020-07-16
    A great resume is key to landing a great software job. There's no surprise there. But so many people make mistakes on their resume that can very easily be fixed.Randall Kanna is on the show today to help us understand how to improve our resumes,...
  • 121: Industrial 3D Printing & Python, Finite State Machines, and Simulating Hardware - Len Wanger - Brian Okken

    121: Industrial 3D Printing & Python, Finite State Machines, and Simulating Hardware - Len Wanger - Brian Okken

    2020-07-09
    Len Wanger works on industrial 3D printers. And I was pleased to find out that there's a bunch of Python in those printers as well. In this episode we talk about:3D printersWhat are the different types of 3D printers?Where are 3D printed...
  • 120: FastAPI & Typer - Sebastián Ramírez - Brian Okken

    120: FastAPI & Typer - Sebastián Ramírez - Brian Okken

    2020-07-03
    FastAPI is a modern, fast (high-performance), web framework for building APIs with Python based on standard Python type hints. Typer is a library for building CLI applications, also based on Python type hints. Type hints and many other details are...
  • 119: Editable Python Installs, Packaging Standardization, and pyproject.toml - Brett Cannon - Brian Okken

    119: Editable Python Installs, Packaging Standardization, and pyproject.toml - Brett Cannon - Brian Okken

    2020-06-26
    There's stuff going on in Python packaging and pyproject.toml.Brett and I talk about some upcoming work on Python packaging, such as:editable installsthe need for standardizationconfiguration of other tools in pyproject.tomlAnd then get off on...
  • 118: Code Coverage and 100% Coverage - Brian Okken

    118: Code Coverage and 100% Coverage - Brian Okken

    2020-06-25
    Code Coverage or Test Coverage is a way to measure what lines of code and branches in your code that are utilized during testing.  Coverage tools are an important part of software engineering. But there's also lots of different opinions about...
  • 117: Python extension for VS Code - Brett Cannon - Brian Okken

    117: Python extension for VS Code - Brett Cannon - Brian Okken

    2020-06-18
    The Python extension for VS Code is most downloaded extension for VS Code.  Brett Cannon is the manager for the distributed development team of the Python extension for VS Code.In this episode, Brett and I discuss the Python extension and VS Code,...
  • 116: 15 amazing pytest plugins - Michael Kennedy - Brian Okken

    116: 15 amazing pytest plugins - Michael Kennedy - Brian Okken

    2020-06-07
    pytest plugins are an amazing way to supercharge your test suites, leveraging great solutions from people solving test problems all over the world. In this episode Michael and I discuss 15 favorite plugins that you should know about.We also discuss...
  • 115: Catching up with Nina Zakharenko - Brian Okken

    115: Catching up with Nina Zakharenko - Brian Okken

    2020-05-30
    One of the great things about attending in person coding conferences, such as PyCon, is the hallway track, where you can catch up with people you haven't seen for possibly a year, or maybe even the first time you've met in person. Nina is...
  • 114: The Python Software Foundation (PSF) Board Elections - Ewa Jodlowska / Christopher Neugebauer - Brian Okken

    114: The Python Software Foundation (PSF) Board Elections - Ewa Jodlowska / Christopher Neugebauer - Brian Okken

    2020-05-24
    "The mission of the Python Software Foundation is to promote, protect, and advance the Python programming language, and to support and facilitate the growth of a diverse and international community of Python programmers."That's a lot of...
  • 113: Technical Debt - James Smith - Brian Okken

    113: Technical Debt - James Smith - Brian Okken

    2020-05-15
    Technical debt has to be dealt with on a regular basis to have a healthy product and development team.The impacts of technical debt include emotional drain on engineers and slowing down development and can adversely affect your hiring ability and...
  • 112: Six Principles of Readable Tests - David Seddon - Brian Okken

    112: Six Principles of Readable Tests - David Seddon - Brian Okken

    2020-05-08
    "Code is read much more often than it is written." - Guido van Rossum This is true for both production code and test code.When you are trying to understand why a test is failing, you'll be very grateful to the test author if they've...
  • 111: Subtests in Python with unittest and pytest - Paul Ganssle - Brian Okken

    111: Subtests in Python with unittest and pytest - Paul Ganssle - Brian Okken

    2020-05-02
    In both unittest and pytest, when a test function hits a failing assert, the test stops and is marked as a failed test. What if you want to keep going, and check more things? There are a few ways. One of them is subtests.Python's unittest...
  • 110: Testing Django - from unittest to pytest - Adam Parkin - Brian Okken

    110: Testing Django - from unittest to pytest - Adam Parkin - Brian Okken

    2020-04-25
    Django supports testing out of the box with some cool extensions to unittest. However, many people are using pytest for their Django testing, mostly using the pytest-django plugin.Adam Parkin, who is known online as CodependentCodr, joins us to talk...
  • 109: Testing in Financial Services - Eric Bergemann - Brian Okken

    109: Testing in Financial Services - Eric Bergemann - Brian Okken

    2020-04-14
    Financial services have their own unique testing development challenges. But they also have lots of the same challenges as many other software projects. Eric Bergemann joins Brian Okken to discuss:Specific testing challenges in the financial services...
  • 108: PySpark - Jonathan Rioux - Brian Okken

    108: PySpark - Jonathan Rioux - Brian Okken

    2020-04-09
    Apache Spark is a unified analytics engine for large-scale data processing. PySpark blends the powerful Spark big data processing engine with the Python programming language to provide a data analysis platform that can scale up for nearly any...
  • 107: Property Based Testing in Python with Hypothesis - Alexander Hultnér - Brian Okken

    107: Property Based Testing in Python with Hypothesis - Alexander Hultnér - Brian Okken

    2020-03-27
    Hypothesis is the Python tool used for property based testing. Hypothesis claims to combine "human understanding of your problem domain with machine intelligence to improve the quality of your testing process while spending less time writing...
  • 106: Visual Testing : How IDEs can make software testing easier - Paul Everitt - Brian Okken

    106: Visual Testing : How IDEs can make software testing easier - Paul Everitt - Brian Okken

    2020-03-20
    IDEs can help people with automated testing.In this episode, Paul Everitt and Brian discuss ways IDEs can encourage testing and make it easier for everyone, including beginners. We discuss features that exist and are great, as well as what is...
  • 105: TAP: Test Anything Protocol - Matt Layman - Brian Okken

    105: TAP: Test Anything Protocol - Matt Layman - Brian Okken

    2020-03-11
    The Test Anything Protocol, or TAP, is a way to record test results in a language agnostic way, predates XML by about 10 years, and is still alive and kicking.Matt Layman has contributed to Python in many ways, including his educational newsletter,...
  • 104: Top 28 pytest plugins - Anthony Sottile - Brian Okken

    104: Top 28 pytest plugins - Anthony Sottile - Brian Okken

    2020-03-04
    pytest is awesome by itself. pytest + plugins is even better. In this episode, Anthony Sottile and Brian Okken discuss the top 28 pytest plugins.Some of the plugins discussed (we also mention a few plugins related to some on this...
  • 103: Django - Lacey Williams Henschel - Brian Okken

    103: Django - Lacey Williams Henschel - Brian Okken

    2020-02-29
    Django is without a doubt one of the most used web frameworks for Python. Lacey Williams Henschel is a Django consultant and has joined me to talk about Django, the Django community, and so much more.Topics:DjangoThe Django CommunityDjango GirlsDjango...
  • 102: Cosmic Python, TDD, testing and external dependencies  - Harry Percival - Brian Okken

    102: Cosmic Python, TDD, testing and external dependencies - Harry Percival - Brian Okken

    2020-02-27
    Harry Percival has completed his second book, "Architecture Patterns with Python". So of course we talk about the book, also known as "Cosmic Python". We also discuss lots of testing topics, especially related to larger systems and...
  • 101: Application Security - Anthony Shaw - Brian Okken

    101: Application Security - Anthony Shaw - Brian Okken

    2020-02-19
    Application security is best designed into a system from the start. Anthony Shaw is doing something about it by creating an editor plugin that actually helps you write more secure application code while you are coding.On today's Test & Code,...
  • 100: A/B Testing - Leemay Nassery - Brian Okken

    100: A/B Testing - Leemay Nassery - Brian Okken

    2020-02-13
    Let's say you have a web application and you want to make some changes to improve it. You may want to A/B test it first to make sure you are really improving things.But really what is A/B testing? That's what we'll find out on this episode...
  • 99: Software Maintenance and Chess - Brian Okken

    99: Software Maintenance and Chess - Brian Okken

    2020-01-30
    I play a form of group chess that has some interesting analogies to software development and maintenance of existing systems. This episode explains group chess and explores a few of those analogies.
  • 98: pytest-testmon - selects tests affected by changed files and methods - Tibor Arpas - Brian Okken

    98: pytest-testmon - selects tests affected by changed files and methods - Tibor Arpas - Brian Okken

    2020-01-21
    pytest-testmon is a pytest plugin which selects and executes only tests you need to run. It does this by collecting dependencies between tests and all executed code (internally using Coverage.py) and comparing the dependencies against changes. testmon...
  • 97: 2019 Retrospective, 2020 Plans, and an amazing decade - Brian Okken

    97: 2019 Retrospective, 2020 Plans, and an amazing decade - Brian Okken

    2019-12-31
    This episode is not just a look back on 2019, and a look forward to 2020. Also, 2019 is the end of an amazingly transofrmative decade for me, so I'm going to discuss that as well.top 10 episodes of 201910: episode 46, Testing Hard To Test...
  • 96: Azure Pipelines - Thomas Eckert - Brian Okken

    96: Azure Pipelines - Thomas Eckert - Brian Okken

    2019-12-16
    Pipelines are used a lot in software projects to automated much of the work around build, test, deployment and more. Thomas Eckert talks with me about pipelines, specifically Azure Pipelines. Some of the history, and how we can use pipelines for...
  • 95: Data Science Pipeline Testing with Great Expectations - Abe Gong - Brian Okken

    95: Data Science Pipeline Testing with Great Expectations - Abe Gong - Brian Okken

    2019-11-30
    Data science and machine learning are affecting more of our lives every day. Decisions based on data science and machine learning are heavily dependent on the quality of the data, and the quality of the data pipeline.Some of the software in the...
  • 94: The real 11 reasons I don't hire you - Charity Majors - Brian Okken

    94: The real 11 reasons I don't hire you - Charity Majors - Brian Okken

    2019-11-18
    You've applied for a job, maybe lots of jobs. Depending on the company, you've gotta get through:a resume reviewa coding challangea phone screenmaybe another code examplean in person interviewIf you get the job, and you enjoy the work,...
  • 93: Software Testing, Book Writing, Teaching, Public Speaking, and PyCarolinas - Andy Knight - Brian Okken

    93: Software Testing, Book Writing, Teaching, Public Speaking, and PyCarolinas - Andy Knight - Brian Okken

    2019-10-30
    Andy Knight is the Automation Panda. Andy Knight is passionate about software testing, and shares his passion through public speaking, writing on automationpanda.com, teaching as an adjunct professor, and now also through writing a book and organizing...
  • 92: 9 Steps to Crater Quality & Destroy Customer Satisfaction - Cristian Medina - Brian Okken

    92: 9 Steps to Crater Quality & Destroy Customer Satisfaction - Cristian Medina - Brian Okken

    2019-10-20
    Cristian Medina wrote an article recently called "Test Engineering Anti-Patterns: Destroy Your Customer Satisfaction and Crater Your Quality By Using These 9 Easy Organizational Practices"Of course, it's sarcastic, and aims to highlight...
  • 91: Python 3.8 -  there's a lot more new than most people are talking about - Brian Okken

    91: Python 3.8 - there's a lot more new than most people are talking about - Brian Okken

    2019-10-16
    Python 3.8.0 final is live and ready to download. On todays episode, we're going to run through what's new, picking out the bits that I think are the most interesting and affect the most people, including new language features standard...
  • 90: Dynamic Scope Fixtures in pytest 5.2 - Anthony Sottile - Brian Okken

    90: Dynamic Scope Fixtures in pytest 5.2 - Anthony Sottile - Brian Okken

    2019-10-11
    pytest 5.2 was just released, and with it, a cool fun feature called dynamic scope fixtures. Anthony Sottile so tilly is one of the pytest core developers, so I thought it be fun to have Anthony describe this new feature for us. We also talk about...
  • 89: Improving Programming Education - Nicholas Tollervey - Brian Okken

    89: Improving Programming Education - Nicholas Tollervey - Brian Okken

    2019-09-28
    Nicholas Tollervey is working toward better ways of teaching programming. His projects include the Mu Editor, PyperCard, and CodeGrades. Many of us talk about problems with software education. Nicholas is doing something about it.Special Guest:...
  • 88: Error Monitoring, Crash Reporting, Performance Monitoring - JD Trask - Brian Okken

    88: Error Monitoring, Crash Reporting, Performance Monitoring - JD Trask - Brian Okken

    2019-09-20
    Tools like error monitoring, crash reporting, and performance monitoring are tools to help you create a better user experience and are fast becoming crucial tools for web development and site reliability. But really what are they? And when do you need...
  • 87: Paths to Parametrization - from one test to many - Brian Okken

    87: Paths to Parametrization - from one test to many - Brian Okken

    2019-09-11
    There's a cool feature of pytest called parametrization. It's totally one of the superpowers of pytest. It's actually a handful of features, and there are a few ways to approach it. Parametrization is the ability to take one test, and send...
  • 86: Teaching testing best practices with 4 testing maxims - Josh Peak - Brian Okken

    86: Teaching testing best practices with 4 testing maxims - Josh Peak - Brian Okken

    2019-09-06
    You've incorporated software testing into your coding practices and know from experience that it helps you get your stuff done faster with less headache. Awesome. Now your colleagues want in on that super power and want to learn testing. How do...
  • 85: Speed Up Test Suites - Niklas Meinzer - Brian Okken

    85: Speed Up Test Suites - Niklas Meinzer - Brian Okken

    2019-08-26
    Good software testing strategy is one of the best ways to save developer time and shorten software development delivery cycle time. Software test suites grow from small quick suites at the beginning of a project to larger suites as we add tests, and...
  • 84: CircuitPython - Scott Shawcroft - Brian Okken

    84: CircuitPython - Scott Shawcroft - Brian Okken

    2019-08-20
    Adafruit enables beginners to make amazing hardware/software projects. With CircuitPython, these projects can now use Python. The combination of Python's ease of use and Adafruit's super cool hardware and a focus on a successful beginner...
  • 83: PyBites Code Challenges behind the scenes - Bob Belderbos - Brian Okken

    83: PyBites Code Challenges behind the scenes - Bob Belderbos - Brian Okken

    2019-08-16
    Bob Belderbos and Julian Sequeira started PyBites a few years ago. They started doing code challanges along with people around the world and writing about it. Then came the codechalleng.es platform, where you can do code challenges in the browser and...
  • 82: pytest - favorite features since 3.0 -  Anthony Sottile - Brian Okken

    82: pytest - favorite features since 3.0 - Anthony Sottile - Brian Okken

    2019-07-31
    Anthony Sottile is a pytest core contributor, as well as a maintainer and contributor to many other projects. In this episode, Anthony shares some of the super cool features of pytest that have been added since he started using it. We also discuss...
  • 81: TDD with flit - Brian Okken

    81: TDD with flit - Brian Okken

    2019-07-17
    In the last episode, we talked about going from script to supported package. I worked on a project called subark and did the packaging with flit. Today's episode is a continuation where we add new features to a supported package and how to...
  • 80: From Python script to Maintainable Package - Brian Okken

    80: From Python script to Maintainable Package - Brian Okken

    2019-07-04
    This episode is a story about packaging, and flit, tox, pytest, and coverage. And an alternate solution to "using the src". Python makes it easy to build simple tools for all kinds of tasks. And it's great to be able to share small...
  • 79: Fixing misinformation about software testing - Brian Okken

    79: Fixing misinformation about software testing - Brian Okken

    2019-06-27
    Some information about software testing is just wrong. I'm not talking about opinions. I have lots of opinions and they differ from other peoples opinions. I'm talking about misinformation and old information that is no longer...
  • 78: I don't write tests because ... - Brian Okken

    78: I don't write tests because ... - Brian Okken

    2019-06-19
    Roadblocks to writing tests, and what to do about it. Some developers either don't write tests, or don't like writing tests. Why not? I love writing tests. In this episode we examine lots of roadblocks to testing, and start coming up with...
  • 77: Testing Complex Systems with Maintainable Test Suites - Brian Okken

    77: Testing Complex Systems with Maintainable Test Suites - Brian Okken

    2019-06-11
    Creating maintainable test suites for complex systems. The episode describes some complexities involved with hardware testing, then shares techniques for shifting complexity out of the test cases. quick overview of what test instruments...
  • 76: TDD: Don’t be afraid of Test-Driven Development - Chris May - Brian Okken

    76: TDD: Don’t be afraid of Test-Driven Development - Chris May - Brian Okken

    2019-05-29
    Test Driven Development, TDD, can be intimidating to try. Why is that? And how can we make it less scary? That's what this episode is about. Chris May is a Python developer and the co-founder of PyRVA, the Richmond Virginia Python group. In this...
  • 75: Modern Testing Principles - Alan Page - Brian Okken

    75: Modern Testing Principles - Alan Page - Brian Okken

    2019-05-23
    Software testing, if done right, is done all the time, throughout the whole life of a software project. This is different than the verification and validation of a classical model of QA teams. It's more of a collaborative model that actually tries...
  • 74:  Technical Interviews: Preparing For, What to Expect, and Tips for Success - Derrick Mar - Brian Okken

    74: Technical Interviews: Preparing For, What to Expect, and Tips for Success - Derrick Mar - Brian Okken

    2019-05-21
    In this episode, I talk with Derrick Mar, CTO and co-founder of Pathrise. This is the episode you need to listen to to get ready for software interviews. We discuss four aspects of technical interviews that interviewers are looking...
  • 73: PyCon 2019 Live Recording - Brian Okken

    73: PyCon 2019 Live Recording - Brian Okken

    2019-05-03
    This is a "Yay! It's PyCon 2019" episode. PyCon is very important to me. But it's kinda hard to put a finger on why. So I figured I'd ask more people to help explain why it's important. I ask a few simple questions to people...
  • 72: Technical Interview Fixes - April Wensel - Brian Okken

    72: Technical Interview Fixes - April Wensel - Brian Okken

    2019-04-29
    Some typical technical interview practices can be harmful and get in the way of hiring great people. April Wensel offers advice to help fix the technical interview process. She recommends: hire for mindset and attitude look for empathy and mentorship...
  • 71: Memorable Tech Talks, The Ultimate Guide - Nina Zakharenko - Brian Okken

    71: Memorable Tech Talks, The Ultimate Guide - Nina Zakharenko - Brian Okken

    2019-04-05
    Nina Zakharenko gives some great advice about giving tech talks. We talk about a blog series that Nina wrote called "The Ultimate Guide To Memorable Tech Talks". This episode is full of great help and encouragement for your own public speaking...
  • 70: Learning Software without a CS degree - Dane Hillard - Brian Okken

    70: Learning Software without a CS degree - Dane Hillard - Brian Okken

    2019-03-29
    Dane and Brian discuss skills needed for people that become software developers from non-traditional paths. Dane is also writing a book to address many of these skill gaps, Code Like a Pro, that's currently in an early access phase. Use code...
  • 69: Andy Hunt - The Pragmatic Programmer - Brian Okken

    69: Andy Hunt - The Pragmatic Programmer - Brian Okken

    2019-03-21
    Andy Hunt and Dave Thomas wrote the seminal software development book, The Pragmatic Programmer. Together they founded The Pragmatic Programmers and are well known as founders of the agile movement and authors of the Agile Manifesto. They founded the...
  • 68: test && commit || revert (TCR) - Thomas Deniffel - Brian Okken

    68: test && commit || revert (TCR) - Thomas Deniffel - Brian Okken

    2019-03-12
    With conventional TDD, you write a failing test, get it to pass, then refactor. Then run the tests again to make sure your refactoring didn't break anything. But what if it did break something? Kent Beck has been recommending to commit your code...
  • 67: Teaching Python in Middle School - Brian Okken

    67: Teaching Python in Middle School - Brian Okken

    2019-02-28
    In today's episode we talk with Kelly Paredes & Sean Tibor. They teach Python in a middle school in Florida, and talk about this experience on the podcast "Teaching Python". I love that they include physical computing right from the...
  • 66: Brian is interviewed by Phil Burgess - Brian Okken

    66: Brian is interviewed by Phil Burgess - Brian Okken

    2019-02-26
    I was recently interviewed on a podcast called "IT Career Energizer Podcast". Phil Burgess is the host of the podcast, and it was a lot of fun. I think it turned out well, and I wanted to share it with you here, with Phil's permission, of...
  • 65: one assert per test - Brian Okken

    65: one assert per test - Brian Okken

    2019-02-17
    Is it ok to have more than one assert statement in a test? I've seen articles that say no, you should never have more than one assert. I've also seen some test code made almost unreadable due to trying to avoid more than one assert per...
  • 64: Practicing Programming to increase your value - Brian Okken

    64: Practicing Programming to increase your value - Brian Okken

    2019-02-07
    I want you to get the most out of being a software developer, or test engineer, or whatever you do that makes this podcast relevant to your life. By "get the most" I mean: the most fun the most value more career options probably more...
  • 63: Python Corporate Training - Matt Harrison - Brian Okken

    63: Python Corporate Training - Matt Harrison - Brian Okken

    2019-01-31
    I hear and I forget. I see and I remember. I do and I understand. -- Confucius Matt Harrison is an author and instructor of Python and Data Science. This episode focuses on his training company, MetaSnake, and corporate training. Matt's written...
  • 62: Python Training - Reuven Lerner - Brian Okken

    62: Python Training - Reuven Lerner - Brian Okken

    2019-01-12
    There are a lot of learning styles and a lot of ways to learn Python. If you started Python through a class at work, or through an online course, or maybe an email series, it's possibly you may have learned from Reuven Lerner. If your first...
  • A retrospective - Brian Okken

    A retrospective - Brian Okken

    2018-12-31
    A look back on 3 years of podcasting, and a bit of a look forward to what to expect in 2019. Top 5 episodes: 2: Pytest vs Unittest vs Nose 33: Katharine Jarmul - Testing in Data Science 18: Testing in Startups and Hiring Software Engineers with Joe...
  • 100 Days of Code - Julian Sequeira - Brian Okken

    100 Days of Code - Julian Sequeira - Brian Okken

    2018-12-28
    Julian Sequeira is Co-Founder of PyBit.es (a blog/platform created to teach and learn Python) and a Python Trainer at Talk Python Training. He's also a survivor of the 100DaysOfCode in Python Challenge. We talk about the 100 days challenge, about...
  • Genesynth, nox, urllib3, & PyCascades - Thea Flowers - Brian Okken

    Genesynth, nox, urllib3, & PyCascades - Thea Flowers - Brian Okken

    2018-12-21
    Thea Flowers is a Pythonista and open source advocate. She helps empower developers of all backgrounds and experience levels using Python and open source software and hardware. Thea is the creator of Nox, the co-chair of PyCascades 2019, the lead...
  • REST APIs, testing with Docker containers and pytest - Brian Okken

    REST APIs, testing with Docker containers and pytest - Brian Okken

    2018-12-14
    Let's say you've got a web application you need to test. It has a REST API that you want to use for testing. Can you use Python for this testing even if the application is written in some other language? Of course. Can you use pytest? duh....
  • What is Data Science? - Vicki Boykis - Brian Okken

    What is Data Science? - Vicki Boykis - Brian Okken

    2018-12-11
    Data science, data engineering, data analysis, and machine learning are part of the recent massive growth of Python. But really what is data science? Vicki Boykis helps me understand questions like: No really, what is data science? What does a data...
  • Being a Guest on a Podcast - Michael Kennedy - Brian Okken

    Being a Guest on a Podcast - Michael Kennedy - Brian Okken

    2018-12-07
    Michael Kennedy of Talk Python and Python Bytes fame joins Brian to talk about being a great guest and what to expect. Even if you have never wanted to be on a podcast, you might learn some great tips. A few of the things we talk about will be...
  • 55: When 100% test coverage just isn't enough - Mahmoud Hashemi - Brian Okken

    55: When 100% test coverage just isn't enough - Mahmoud Hashemi - Brian Okken

    2018-12-03
    What happens when 100% test code coverage just isn't enough. In this episode, we talk with Mahmoud Hashemi about glom, a very cool project in itself, but a project that needs more coverage than 100%. This problem affects lots of projects that use...
  • 54: Python 1994 - Paul Everitt - Brian Okken

    54: Python 1994 - Paul Everitt - Brian Okken

    2018-11-25
    Paul talks about the beginning years of Python. Talking about Python's beginnings is also talking about the Python community beginnings. Yes, it's reminiscing, but it's fun.Special Guest: Paul Everitt.Links:Python 1994 Panel Discussion...
  • 53: Seven Databases in Seven Weeks - Luc Perkins - Brian Okken

    53: Seven Databases in Seven Weeks - Luc Perkins - Brian Okken

    2018-11-18
    Luc Perkins joins the show to talk about "Seven Databases in Seven Weeks: A guide to modern databases and the NoSQL movement." We discuss a bit about each database: Redis, Neo4J, CouchDB, MongoDB, HBase, Postgres, and DynamoDB.Special Guest:...
  • 52: pyproject.toml : the future of Python packaging  - Brett Cannon - Brian Okken

    52: pyproject.toml : the future of Python packaging - Brett Cannon - Brian Okken

    2018-11-05
    Brett Cannon discusses the changes afoot in Python packaging as a result of PEP 517, PEP 518, starting with "How did we get here?" and "Where are we going?" Discussed: flit Poetry tox Continuous Integration setup.py, MANIFEST.in,...
  • 51: Feature Testing - Brian Okken

    51: Feature Testing - Brian Okken

    2018-10-30
    Andy Knight joins me in discussing the concept of feature testing. A feature tests is "a test verifying a service or library as the customer would use it, but within a single process." That was a quote from an article that appeared on the...
  • 50: Flaky Tests and How to Deal with Them - Brian Okken

    50: Flaky Tests and How to Deal with Them - Brian Okken

    2018-10-25
    Anthony Shaw joins Brian to discuss flaky tests and flaky test suites. What are flaky tests? Is it the same as fragile tests? Why are they bad? How do we deal with them? What causes flakiness? How can we fix them? How can we avoid them? Proactively...
  • 49: tox - Oliver Bestwalter - Brian Okken

    49: tox - Oliver Bestwalter - Brian Okken

    2018-10-15
    tox is a simple yet powerful tool that is used by many Python projects. tox is not just a tool to help you test a Python project against multiple versions of Python. In this interview, Oliver and Brian just scratch the surface of this simple yet...
  • 48: A GUI for pytest - Brian Okken

    48: A GUI for pytest - Brian Okken

    2018-10-07
    The story of how I came to find a good user interface for running and debugging automated tests is interleaved with a multi-year effort of mine to have a test workflow that’s works smoothly with product development and actually speeds things up. It’s...
  • 47: Automation Panda - Andy Knight - Brian Okken

    47: Automation Panda - Andy Knight - Brian Okken

    2018-09-28
    Interview with Andy Knight, the Automation Panda. Selenium & WebDriver Headless Chrome Gherkin BDD Given When Then pytest-bdd PyCharm Writing Good Gherkin Overhead of Gherkin and if it's worth it When to use pytest vs pytest-bdd The art of...
  • 46: Testing Hard To Test Applications - Anthony Shaw - Brian Okken

    46: Testing Hard To Test Applications - Anthony Shaw - Brian Okken

    2018-09-02
    How do you write tests for things that aren’t that easy to write tests for? That question is a possibly terrible summary of a question sent to me by a listener. And to help me start answering that question, I asked a friend of mine to help, Antony...
  • 45: David Heinemeier Hansson - Software Development and Testing, TDD, and exploratory QA - Brian Okken

    45: David Heinemeier Hansson - Software Development and Testing, TDD, and exploratory QA - Brian Okken

    2018-08-13
    David Heinemeier Hansson is the creator of Ruby on Rails, founder & CTO at Basecamp (formerly 37signals). He's a best selling author, public speaker, and even a Le Mans class winning racing driver. All of that, of course, is awesome. But...
  • 44: Mentoring - Nina Zakharenko - Brian Okken

    44: Mentoring - Nina Zakharenko - Brian Okken

    2018-07-21
    Nina Zakharenko is a cloud developer advocate at Microsoft focusing on Python. She's also an excellent public speaker. We talk about her experience with mentoring, both being a mentor, and utilizing mentors. We also talk about public speaking, her...
  • Preparing for Technical Talks with Kelsey Hightower - bonus episode - Brian Okken

    Preparing for Technical Talks with Kelsey Hightower - bonus episode - Brian Okken

    2018-07-16
    After I had wrapped up the interview with Kelsey Hightower for episode 43, I asked him one last question. You see, I admire the his presentation style. So I asked him if he would share with me how he prepared for his presentations. His answer is so...
  • 43: Kelsey Hightower - End to End & Integration Testing - Brian Okken

    43: Kelsey Hightower - End to End & Integration Testing - Brian Okken

    2018-07-05
    I first heard Kelsey speak during his 2017 PyCon keynote. He's an amazing speaker, and I knew right then I wanted to hear more about what he does and hear more of his story. We discuss testing, of course, but we take it further and...
  • 42: Using Automated Tests to Help Teach Python - Trey Hunner - Brian Okken

    42: Using Automated Tests to Help Teach Python - Trey Hunner - Brian Okken

    2018-06-27
    This interview with Trey Hunner discusses his use of automated tests to help teach programming. Automated testing is a huge part of developing great software. But many new developers don't get exposed to testing for quite a while. But this is...
  • 41: Testing in DevOps and Agile - Anthony Shaw - Brian Okken

    41: Testing in DevOps and Agile - Anthony Shaw - Brian Okken

    2018-04-18
    We talk with Anthony Shaw about some of the testing problems facing both DevOps teams, and Agile teams. We also talk about his recent pull request accepted into pytest.Special Guest: Anthony Shaw.Links:Anthony Shaw on github.ioSupport for the new...
  • 40: On Podcasting - Adam Clark - Brian Okken

    40: On Podcasting - Adam Clark - Brian Okken

    2018-04-10
    Adam is the host of The Gently Mad podcast, and teaches the steps in creating and growing a podcast in his course Irresistible Podcasting. He was one of the people who inspired Brian to get the Test & Code podcast started in the first place. Brian...
  • 39: Thorough software testing for critical features - Brian Okken

    39: Thorough software testing for critical features - Brian Okken

    2018-03-29
    Complete and exhaustive testing is not possible. Nor would it be fun, or maintainable, or a good use of your time. However, some functionality is important enough to make sure the test behavior coverage is thorough enough to have high confidence in...
  • 38: Prioritize software tests with RCRCRC - Brian Okken

    38: Prioritize software tests with RCRCRC - Brian Okken

    2018-03-13
    RCRCRC was developed by Karen Nicole Johnson. In this episode we discuss the mnemonic/heuristic and use it to prioritize tests for the cards application. Recent: new features, new areas of code Core: essential functions must continue to work, your...
  • 37: What tests to write first - Brian Okken

    37: What tests to write first - Brian Okken

    2018-03-08
    This episode starts down the path of test strategy with the first tests to write in either a legacy system or a project just getting off it's feet. We cover: My approach to testing existing systems. Put names to strategies so we can refer to them...
  • 36: Stephanie Hurlburt - Mentoring and Open Office Hours - Brian Okken

    36: Stephanie Hurlburt - Mentoring and Open Office Hours - Brian Okken

    2018-02-13
    Stephanie is a co-founder and graphics engineer at Binomial. She works on Basis, an image compressor, and has customers in games, video, mapping, and any application that has lots of image data. Stephanie has also been encouraging experienced...
  • 35: Continuing Education and Certificate Programs at UW - Brian Okken

    35: Continuing Education and Certificate Programs at UW - Brian Okken

    2018-02-01
    There are lots of ways to up your skills. Of course, I'm a big fan of learning through reading books, such as upping your testing skills by reading Python Testing with pytest. And then there are online learning systems and MOOCs. At the other end...
  • 34: TDD and Test First - Brian Okken

    34: TDD and Test First - Brian Okken

    2017-12-31
    An in depth discussion of Test Driven Development (TDD) should include a discussion of Test First. So that's where we start. Why write tests first? How do you know what tests to write? What are the steps for test first? Isn't this just...
  • 33: Katharine Jarmul - Testing in Data Science - Brian Okken

    33: Katharine Jarmul - Testing in Data Science - Brian Okken

    2017-11-30
    A discussion with Katharine Jarmul, aka kjam, about some of the challenges of data science with respect to testing. Some of the topics we discuss: experimentation vs testing testing pipelines and pipeline changes automating data validation property...
  • 32: David Hussman - Agile vs Agility, Dude's Law, and more - Brian Okken

    32: David Hussman - Agile vs Agility, Dude's Law, and more - Brian Okken

    2017-10-03
    A wonderful discussion with David Hussman. David and Brian look back at what all we've learned in XP, TDD, and other Agile methodologies, where things have gone awry, how to bring the value back, and where testing fits into all of this. How to...
  • 31: I'm so sick of the testing pyramid - Brian Okken

    31: I'm so sick of the testing pyramid - Brian Okken

    2017-09-27
    What started as a twitter disagreement carries over into this civil discussion of software testing. Brian and Paul discuss testing practices such as the testing pyramid, TDD, unit testing, system testing, and balancing test effort. the Testing...
  • 30: Legacy Code - M. Scott Ford - Brian Okken

    30: Legacy Code - M. Scott Ford - Brian Okken

    2017-07-31
    M. Scott Ford is the founder and chief code whisperer at Corgibytes, a company focused on helping other companies with legacy code. Topics include: How M. Scott Ford got into forming a company that works on legacy code. Technical debt Process...
  • 29: Kobiton & QASymphony - Josh Lieberman - Brian Okken

    29: Kobiton & QASymphony - Josh Lieberman - Brian Okken

    2017-06-30
    Kobiton is a service to test mobile apps on real devices. QASymphony offers software testing and QA tools.Special Guest: Josh Lieberman.
  • 28: Chaos Engineering & Experimentation at Netflix - Casey Rosenthal - Brian Okken

    28: Chaos Engineering & Experimentation at Netflix - Casey Rosenthal - Brian Okken

    2017-04-07
    Today we have an interview with Casey Rosenthal of Netflix. One of the people making sure Netflix runs smoothly is Casey Rosenthall. He is the manager for the Traffic, Intuition, and Chaos teams at Netflix. He's got a great perspective on quality...
  • 27: Mahmoud Hashemi : unit, integration, and system testing - Brian Okken

    27: Mahmoud Hashemi : unit, integration, and system testing - Brian Okken

    2017-02-26
    What is the difference between a unit test, an integration test, and a system test? Mahmoud Hashemi helps me to define these terms, as well as discuss the role of all testing variants in software development. What is the difference between a unit...
  • 26: pyresttest – Sam Van Oort - Brian Okken

    26: pyresttest – Sam Van Oort - Brian Okken

    2016-12-01
    Interview with Sam Van Oort about pyresttest, "A REST testing and API microbenchmarking tool" pyresttest A question in the Test & Code Slack channel was raised about testing REST APIs. There were answers such as pytest + requests, of...
  • 25: Selenium, pytest, Mozilla – Dave Hunt - Brian Okken

    25: Selenium, pytest, Mozilla – Dave Hunt - Brian Okken

    2016-12-01
    Interview with Dave HuntdWe Cover:Selenium Driverpytestpytest plugins: pytest-seleniumpytest-htmlpytest-variablestoxDave Hunt’s “help wanted” list on githubMozillaAlso:fixturesxfailCI and xfail and html reportsCI and capturing pytest code...
  • 24: pytest - Raphael Aurich - Brian Okken

    24: pytest - Raphael Aurich - Brian Okken

    2016-11-10
    pytest is an extremely popular test framework used by many projects and companies. In this episode, I interview Raphael Aurich (@hackebrot), a core contributor to both pytest and cookiecutter. We discuss how Raphael got involved with both projects,...
  • 23: Lessons about testing and TDD from Kent Beck - Brian Okken

    23: Lessons about testing and TDD from Kent Beck - Brian Okken

    2016-09-30
    Kent Beck's twitter profile says "Programmer, author, father, husband, goat farmer". But I know him best from his work on extreme programming, test first programming, and test driven development. He's the one. The reason you know about...
  • 22: Converting Manual Tests to Automated Tests - Brian Okken

    22: Converting Manual Tests to Automated Tests - Brian Okken

    2016-09-24
    How do you convert manual tests to automated tests? This episode looks at the differences between manual and automated tests and presents two strategies for converting manual to automated.
  • 21: Terminology: test fixtures, subcutaneous testing, end to end testing, system testing - Brian Okken

    21: Terminology: test fixtures, subcutaneous testing, end to end testing, system testing - Brian Okken

    2016-08-31
    A listener requested that I start covering some terminology.  I think it's a great idea.Covered in this episode:Test FixturesSubcutaneous TestingEnd to End Testing (System Testing)I also discuss:A book rewriteProgress on transcriptsA story from...
  • 20: Talk Python To Me - Michael Kennedy - Brian Okken

    20: Talk Python To Me - Michael Kennedy - Brian Okken

    2016-07-29
    I talk with Michael about:Episodes of his show having to do with testing.His transition from employee to podcast host and online training entrepreneur.His Python training courses.The Pyramid Web framework.Courses by MichaelExplore Python Jumpstart by...
  • 19: Python unittest - Robert Collins - Brian Okken

    19: Python unittest - Robert Collins - Brian Okken

    2016-06-15
    Interview with Robert Collins, current core maintainer of Python's unittest module.Some of the topics coveredHow did Robert become the maintainer of unittest?unittest2 as a rolling backport of unittesttest and class parametrization with subtest...
  • 18: Testing in Startups and Hiring Software Engineers - Joe Stump - Brian Okken

    18: Testing in Startups and Hiring Software Engineers - Joe Stump - Brian Okken

    2016-04-19
    In this episode, I interview with Joe Stump, cofounder of Sprintly (https://sprint.ly), to give the startup perspective to development and testing.Joe has spent his career in startups.  He's also been involved with hiring and talent acquisition...
  • 17: The Travis Foundation - Laura Gaetano - Brian Okken

    17: The Travis Foundation - Laura Gaetano - Brian Okken

    2016-04-11
    The Travis Foundation. Interview with Laura GaetanoLinks and things we talked about:Travis FoundationOpen Source GrantsThe Foundation's support of Katrina Owen from exercism.ioExercism.ioRails Girls summer of codeDiversity TicketsConference...
  • 16: Welcome to Test and Code - Brian Okken

    16: Welcome to Test and Code - Brian Okken

    2016-03-31
    This is a small episode. I'm changing the name from the "Python Test Podcast" to "Test & Code". I just want to discuss the reasons behind this change, and take a peek at what's coming up in the future for this...
  • 15: Lean Software Development - Brian Okken

    15: Lean Software Development - Brian Okken

    2016-03-09
    An introduction to Lean Software Development This is a quick intro to the concepts of Lean Software Development. I'm starting a journey of trying to figure out how to apply lean principles to software development in the context of...
  • 14: Continuous Integration with Travis CI – Josh Kalderimis - Brian Okken

    14: Continuous Integration with Travis CI – Josh Kalderimis - Brian Okken

    2016-02-25
    Interview with Josh Kalderimis from Travis CI. Josh is a co-founder and Chief Post-It Officer at Travis CI. Topics What is Continuous Integration, CI What is Travis CI Some history of the company travis-ci.org vs travis-ci.com and merging the...
  • 13: Ian Cordasco – Betamax - Brian Okken

    13: Ian Cordasco – Betamax - Brian Okken

    2016-02-17
    Testing apps that use requests without using mock. Interview with Ian Cordasco (@sigmavirus24) Topics: Betamax - python library for replaying requests interactions for use in testing. requests github3.py Pycon 2015 talk: Ian Cordasco - Cutting Off...
  • 12: Coverage.py with Ned Batchelder - Brian Okken

    12: Coverage.py with Ned Batchelder - Brian Okken

    2016-02-09
    In this episode I interview Ned Batchelder. I know that coverage.py is very important to a lot of people to understand how much of their code is being covered by their test suites. Since I'm far from an expert on coverage, I asked Ned to discuss...
  • 11: pytest assert magic - Brian Okken

    11: pytest assert magic - Brian Okken

    2016-02-04
    How pytest, unittest, and nose deal with assertions. The job of the test framework to tell developers how and why their tests failed is a difficult job. In this episode I talk about assert helper functions and the 3 methods pytest uses to get around...
  • 10: Test Case Design using Given-When-Then from BDD - Brian Okken

    10: Test Case Design using Given-When-Then from BDD - Brian Okken

    2016-01-31
    Given-When-Then is borrowed from BDD and is my favorite structure for test case design. It doesn’t matter if you are using pytest, unittest, nose, or something completely different, this episode will help you write better tests. The Given-When-Then...
  • 9: Harry Percival : Testing Web Apps with Python, Selenium, Django - Brian Okken

    9: Harry Percival : Testing Web Apps with Python, Selenium, Django - Brian Okken

    2016-01-18
    Intro to Harry Percival, his background and story of how he got into TDD and ended up writing a bookComparing using unittest and pytest with applicability to testing django projects. Functional end to end testing with selenium.The django test client...
  • 8: Agile vs Agility : Agile Is Dead (Long Live Agility) - Brian Okken

    8: Agile vs Agility : Agile Is Dead (Long Live Agility) - Brian Okken

    2015-12-15
    In today's podcast, I dodge the question of "What do you think of Agile?" by reading an essay from Dave Thomas
  • 7: The Waterfall Model and “Managing the Development of Large Software Systems” - Brian Okken

    7: The Waterfall Model and “Managing the Development of Large Software Systems” - Brian Okken

    2015-10-21
    The waterfall model has been used and modified and changed and rebelled against since before I started programming. Waterfall such an important character in the story of software development that we should get to know it a better.
  • 6: Writing software is like nothing else - Brian Okken

    6: Writing software is like nothing else - Brian Okken

    2015-10-20
    My experience with writing software comes from my experience: where I grew up, what eras I lived through, what my economical and geographical experiences have been, when I learned to code, and what projects I've worked on.
  • 5: Test Classes: No OO experience required - Brian Okken

    5: Test Classes: No OO experience required - Brian Okken

    2015-09-23
    Setup and Teardown Benefits of Test Fixtures code reuse cleanup of resources errors vs failures focusing your thinking on what you are testing and what you are not scoping for efficiency Brief look at pytest named fixtures References pytest...
  • 4: Test Fixtures: Setup, Teardown, and so much more - Brian Okken

    4: Test Fixtures: Setup, Teardown, and so much more - Brian Okken

    2015-09-11
    Setup and Teardown Benefits of Test Fixtures code reuse cleanup of resources errors vs failures focusing your thinking on what you are testing and what you are not scoping for efficiency Brief look at pytest named fixtures References pytest...
  • 3: Why test? - Brian Okken

    3: Why test? - Brian Okken

    2015-09-02
    Answering a listener question. Why testing? What are the benefits? Why automated testing over manual testing? Why test first? Why do automated testing during development? Why test to the user level API? After describing my ideal test strategy and...
  • 2: Pytest vs Unittest vs Nose - Brian Okken

    2: Pytest vs Unittest vs Nose - Brian Okken

    2015-08-20
    I list my requirements for a framework and discuss how Pytest, Unittest, and Nose measure up to those requirements. Mentioned: pytest unittest nose delayed assert pytest-expect doctest