Test & Code

Brian Okken
undefined
Apr 18, 2024 • 28min

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

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 code coverage be measured and trackedGood refactoring can reduce code coverageIs it worth testing error conditions?Are rare error codes ok to just monitor?API drift and autospecMitigating riskDeciding what to test and what not to testFocus testing on key money-making features If there's a bug in this part of the code, how much business impact is there?Performance testing needs to approximately match real world workloadsCost of a service breaking vs the cost of creating, maintaining, and running testsKeeping test suites quick to minimize getting distractedLinks:Too much of a good thing: the trade-off we make with tests Load testing is hard, and the tools are... not great. But why?Yet Another Rust Resource (YARR!)Goodhart's law - "When a measure becomes a target, it ceases to be a good measure"
undefined
Apr 11, 2024 • 57min

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

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, which hosts this podcast.Topics:PodcastingBuilding new SaaS (software as a service) productsBalancing work, side hustle, and familyGreat places to snowboard in British ColumbiaBTW. This episode was recorded last summer before I switched to transistor.fm.I'm now on Transistor for most of a year now, and I love it.Links from the show:Transistor.fm - excellent podcast hosting, Justin is a co-founderHow to start a podcast in 2024Podcasts from JustinBuild your SaaS - currentBuild & Launch - an older one, but greatMegaMaker - from 2021 / 2022
undefined
5 snips
Mar 11, 2024 • 48min

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

Explore the use of Rust to create faster Python tooling with Ruff and uv. Learn about Astral's venture-backed company and the future of UV tool. Discover how UV can enhance packaging, virtual environments, and GitHub issue management.
undefined
Feb 25, 2024 • 39min

215: Staying Technical as a Manager

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 to leadership in devrel. We discuss how to stay technical, as well as dive into some results of his studies in how companies use developer relationship channels.
undefined
7 snips
Feb 7, 2024 • 39min

214: Python Testing in VS Code

The podcast discusses the recent changes in the Python for VS Code interface for testing, with a focus on pytest. The speakers talk about the background and improvements in testing support, the integration of Python testing in VS Code, the rollout process for new features, bug fixes and user feedback, and how to stay updated on Python testing in VS Code. They emphasize the importance of relying on issue reports and user feedback to ensure the extension is working as intended.
undefined
Jan 19, 2024 • 14min

213: Repeating Tests

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 this:pytest-repeatpytest-rerunfailurespytest-flakefinderpytest-instafailWe talk about each of these in this episode.
undefined
Jan 13, 2024 • 8min

212: Canon TDD - by Kent Beck

Kent Beck, author of 'Test Driven Development by Example', discusses Canon TDD. They explore adapting TDD to individual needs and the importance of creating test lists for expected behaviors. The conversation delves into test list conversion, managing new tests, and the significance of refactoring in the testing process.
undefined
Dec 15, 2023 • 18min

211: Stamp out test dependencies with pytest plugins

This podcast discusses the challenges of test dependencies and provides strategies for debugging and resolving them. It explores the benefits of pytest plugins like 'pytest-randomly' and 'pytest-reverse', which can randomize and reverse test order. Using plugins to remove test dependencies improves efficiency and isolates fixtures. The podcast also covers the process of debugging tests and highlights the importance of reproducible test failures for enhancing project efficiency.
undefined
Nov 30, 2023 • 16min

210: TDD - Refactor while green

The podcast explores the necessity of the refactor step in Test Driven Development, including when to refactor and whether tests should be included. They discuss adding a 'done' feature to a command line application, the process of refactoring while writing tests, and the importance of writing first drafts and committing code frequently.
undefined
Nov 16, 2023 • 16min

209: Testing argparse Applications

The podcast discusses testing argparse applications, including designing for testability, using pytest and capsys for testing stdout, debugging and preview flags, and reverting to subprocess.run if unable to modify code under test. They also cover logging and print statements, testing with command line arguments and 'slex' function, and adding new requirements and testing techniques.

The AI-powered Podcast Player

Save insights by tapping your headphones, chat with episodes, discover the best highlights - and more!
App store bannerPlay store banner
Get the app