
Test & Code
The Python Test Podcast hosted by Brian Okken
Latest episodes

Oct 31, 2019 • 30min
93: Software Testing, Book Writing, Teaching, Public Speaking, and PyCarolinas - Andy Knight
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 a new regional Python conference.
Topics of this episode include:
Andy's book on software testing
Being an adjunct professor
Public speaking and preparing talk proposals
including tips from Andy about proposals and preparing for talks
PyCarolinas
Special Guest: Andy Knight.Sponsored By:Raygun: Detect, diagnose, and destroy Python errors that are affecting your customers. With smart Python error monitoring software from Raygun.com, you can be alerted to issues affecting your users the second they happen.Links:Automation PandaAndy's Speaking eventsPyCarolinas 2020
★ Support this podcast on Patreon ★

Oct 20, 2019 • 35min
92: 9 Steps to Crater Quality & Destroy Customer Satisfaction - Cristian Medina
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 many problems with organizational practices that reduce software quality.
The article doesn't go out of character, and only promotes the anti-patterns.
However, in this interview, we discuss each point, and the corollary of what you really should do. At least, our perspectives.
Here's the list of all the points discussed in the article and in this episode:
Make the Test teams solely responsible for quality
Require all tests to be automated before releasing
Require 100% code coverage
Isolate the Test organization from Development
Measure the success of the process, not the product.
Metrics, if rewarded, will always be gamed.
Require granular projections from engineers
Reward quick patching instead of solving
Plan for today instead of tomorrow
Special Guest: Cristian Medina.Sponsored By:Azure Pipelines: Automate your builds and deployments with pipelines so you spend less time with the nuts and bolts and more time being creative. Many organizations and open source projects are using Azure Pipelines already. Get started for free at azure.com/pipelinesLinks:Test Engineering Anti-Patterns: Destroy Your Customer Satisfaction and Crater Your Quality By Using These 9 Easy Organizational Practices — The article we discuss in the show.tryexceptpass — Cris's blog
★ Support this podcast on Patreon ★

Oct 16, 2019 • 21min
91: Python 3.8 - there's a lot more new than most people are talking about
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 library changes
optimizations in 3.8
Not just the big stuff everyone's already talking about. But also some little things that will make programming Python even more fun and easy.
I'm excited about Python 3.8. And really, this episode is to my way to try to get you excited about it too.Sponsored By:PyCharm Professional: Try PyCharm Pro with a 4 month free trial. Promo Code: TESTANDCODE22Links:What’s New In Python 3.8 - at docs.python.orgDownload Python 3.8 at Python.org
★ Support this podcast on Patreon ★

Oct 11, 2019 • 34min
90: Dynamic Scope Fixtures in pytest 5.2 - Anthony Sottile
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 parametrized testing and really what is fixture scope and then what is dynamic scope.Special Guest: Anthony Sottile.Sponsored By:Raygun: Detect, diagnose, and destroy Python errors that are affecting your customers. With smart Python error monitoring software from Raygun.com, you can be alerted to issues affecting your users the second they happen.Links:pytest changelogpytest fixturesdynamic scope fixturesepisode 82: pytest - favorite features since 3.0 the pytest book — Python Testing with pytest
★ Support this podcast on Patreon ★

Sep 28, 2019 • 42min
89: Improving Programming Education - Nicholas Tollervey
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: Nicholas Tollervey.Sponsored By:Azure Pipelines: Automate your builds and deployments with pipelines so you spend less time with the nuts and bolts and more time being creative. Many organizations and open source projects are using Azure Pipelines already. Get started for free at azure.com/pipelinesLinks:Code With Mu — a simple Python editor for beginner programmersMade With Mu — A blog to celebrate projects that use the Mu Python code editor to create cool stuff.PyperCard — Easy GUIs for AllCodeGrades
★ Support this podcast on Patreon ★

Sep 21, 2019 • 48min
88: Error Monitoring, Crash Reporting, Performance Monitoring - JD Trask
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 them?
You've built a cool web app or service, and you want to make sure your customers have a great experience.
You know I advocate for utilizing automated tests so you find bugs before your customers do. However, fast development lifecycles, and quickly reacting to customer needs is a good thing, and we all know that complete testing is not possible. That's why I firmly believe that site monitoring tools like logging, crash reporting, performance monitoring, etc are awesome for maintaining and improving user experience.
John-Daniel Trask, JD, the CEO of Raygun, agreed to come on the show and let me ask all my questions about this whole field.Special Guest: John-Daniel Trask.Sponsored By:Raygun: Detect, diagnose, and destroy Python errors that are affecting your customers. With smart Python error monitoring software from Raygun.com, you can be alerted to issues affecting your users the second they happen.
★ Support this podcast on Patreon ★

Sep 11, 2019 • 19min
87: Paths to Parametrization - from one test to many
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 lots of different input datasets into the code under test, and maybe even have different output checks, all within the same test that you developed in the simple test case.
Super powerful, but something since there's a few approaches to it, a tad tricky to get the hang of.Sponsored By:PyCharm Professional: Try PyCharm Pro with a 4 month free trial. Promo Code: TESTANDCODE22Links:git branch — -a : list all branches, -r : just remotespytest changelogpytest deprecations and removalsPython Testing with pytest — Test function parametrization is in chapter 2. Fixture parametrization is in chapter 3.Parametrizing test functions — pytest documentationpytest fixtures — pytest documentation
★ Support this podcast on Patreon ★

Sep 6, 2019 • 23min
86: Teaching testing best practices with 4 testing maxims - Josh Peak
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 you help them?
That's where Josh Peak is. He's helping his team add testing to their workflow to boost their productivity.
That's what we're talking about today on Test & Code.
Josh walks us through 4 maxims of developing software tests that help grow your confidence and proficiency at test writing.Special Guest: Josh Peak.Sponsored By:Raygun: Detect, diagnose, and destroy Python errors that are affecting your customers. With smart Python error monitoring software from Raygun.com, you can be alerted to issues affecting your users the second they happen.Links:From Zero to Test: Turning hurdles into steps. Advanced Python Testing — Postspytest-vcrVCR.pypytest-randomly
★ Support this podcast on Patreon ★

Aug 26, 2019 • 27min
85: Speed Up Test Suites - Niklas Meinzer
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 the time to run the suites grows with it.
Fortunately, pytest has many tricks up it's sleave to help shorten those test suite times.
Niklas Meinzer is a software developer that recentely wrote an article on optimizing test suites. In this episode, I talk with Niklas about the optimization techniques discussed in the article and how they can apply to just about any project.Special Guest: Niklas Meinzer.Sponsored By:Azure Pipelines: Automate your builds and deployments with pipelines so you spend less time with the nuts and bolts and more time being creative. Many organizations and open source projects are using Azure Pipelines already. Get started for free at azure.com/pipelinesLinks:Profiling and improving the runtime of a large pytest test suite | Niklas Meinzer
★ Support this podcast on Patreon ★

Aug 20, 2019 • 36min
84: CircuitPython - Scott Shawcroft
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 experience makes learning to write code that controls hardware super fun.
In this episode, Scott Shawcroft, the project lead, talks about the past, present, and future of CircuitPython, and discusses the focus on the beginner.
We also discuss contributing to the project, testing CircuitPython, and many of the cool projects and hardware boards that can use CircuitPython, and Blinka, a library to allow you to use "CircuitPython APIs for non-CircuitPython versions of Python such as CPython on Linux and MicroPython," including Raspberry Pi.Special Guest: Scott Shawcroft.Sponsored By:Patreon Supporters: Help support the show with as little as $1 per month and be the first to know when new episodes come out.Links:CircuitPythonDownloads — All the products that run CircuitPythonLearning Guides with CircuitPythonLoading CircuitPython on Circuit Playground ExpressAdafruit Discord ServerScott Shawcroft (@tannewt) / TwitterAdafruit-Blinka
★ Support this podcast on Patreon ★