Test & Code
Brian Okken
All episodes
Best episodes
Top 10 Test & Code Episodes
Goodpods has curated a list of the 10 best Test & Code episodes, ranked by the number of listens and likes each episode have garnered from our listeners. If you are listening to Test & Code for the first time, there's no better place to start than with one of these standout episodes. If you are a fan of the show, vote for your favorite Test & Code episode by adding your comments to the episode page.
Boost Your Django DX - Adam Johnson
Test & Code
03/01/22 • 26 min
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 the things I love about this book is that it's not just for Django devs.
I'd guess that about half the book is about topics that all Python developers would find useful, from virtual environments to linters to testing.
But of course, also tons of tips and tools for working with Django.
Links:
- “Boost Your Django DX” Released — Adam's announcement
- Boost Your Django DX — The book
2 Listeners
Managing Software Teams - Ryan Cheley
Test & Code
03/17/22 • 47 min
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 reviews
- asking good questions
- being honest about what you can't do with current resources and data
- discussing tradeoffs and offering solutions that can be completed faster than the ideal solution
- balancing engineering and managing
- making sure documentation happens
- remote teams
- encouraging collaboration
- encouraging non-work-related conversations
- watching out for overworking
1 Listener
215: Staying Technical as a Manager
Test & Code
02/25/24 • 39 min
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.
Learn pytest
- pytest is the number one test framework for Python.
- Learn the basics super fast with Hello, pytest!
- Then later you can become a pytest expert with The Complete pytest Course
- Both courses are at courses.pythontest.com
1 Listener
09/02/18 • 42 min
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 Shaw.
Of course, different types of applications have different test strategies, so there’s not a universal answer. But I know some of you out there have experience and expertise around how to tackle this problem.
Listen to the discussion Anthony and I have about it, and let me know if you have some techniques or tips to add.
Special Guest: Anthony Shaw.
Sponsored By:
09/21/19 • 48 min
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:
03/13/19 • 38 min
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 to revision control after every green test run.
Oddmund Strømme suggested a symmetrical idea to go ahead and revert the code when a test fails.
Kent writes that he hated the idea, but had to try it.
Then wrote about it last September.
And now we have TCR, "(test && commit) || revert".
What's it feel like to actually do this?
Well, Thomas Deniffel has been using it since about a month after that article came out.
In this episode, we'll hear from Thomas about his experience with it.
It's a fascinating idea. Have a listen and let me know what you think.
Special Guest: Thomas Deniffel.
Sponsored By:
- PyCharm Professional: Try PyCharm Pro for an extended 4 month trial before deciding which version you need. If you value your time, you owe it to yourself to try PyCharm. Promo Code: TESTANDCODE22
Links:
- test && commit || revert — Kent Beck's original article
- TCR: (test && commit || revert). How to use? Alternative to TDD? — Thomas Deniffel's article
- TCR Variants (test && commit || revert)
- TCR: A pulverizer for coding tasks — Another interesting opinion from someone else trying TCR - Jason Crawford
- (test && commit || revert) Questions Answered — Written after this interview.
10/03/17 • 47 min
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 build the wrong thing faster
- Agile vs Agility
- Product vs Process
- Where testing fits into software development practices.
- "Integration tests, there's a name that needs to be refactored desperately."
- Integration tests are "story tests". They tell the story of the product.
- XP and TDD and the relationship with tests
- To test for design, use microtests, xUnit style.
- User Advocy tests are often lacking, but are needed to learn about the product.
- "I just keep writing tests until I'm not scared anymore." - Kent Beck
- Dude's Law: Value = Why/How
- People often focus so much on the how that they forget about why they are doing something.
- Subcutaneous Tests
- "The hardest part of programming is thinking."
- Refactoring vs Repaving
- Agility means being able to quickly change direction
- During experimentation and learning, what matters isn't how much you got done, but how much you learn.
- "The best way to get automation is to make developers do manual tests."
Special Guest: David Hussman.
Sponsored By:
- Talk Python Training: Online video courses for Python developers
- Python Testing with pytest, 2nd edition: The fastest way to learn pytest and practical testing practices.
- 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:
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 inconsistencies. That was the start of an adventure in open source collaboration, shell prompt internals, difficult test problems, and continuous integration quirks.
Brian Skinn initially noticed that on Windows cmd, a space was added between a prefix defined by --prompt and the rest of the prompt, whereas on bash no space was added.
For reference, there were/are three nominal virtualenv prompt modification behaviors, all of which apply to the prompt changes that are made at the time of virtualenv activation:
- If the environment variable VIRTUAL_ENV_DISABLE_PROMPT is defined and non-empty at activation time, do not modify the prompt at all. Otherwise:
- If the --prompt argument was supplied at creation time, use that argument as the prefix to apply to the prompt; or,
- If the --prompt argument was not supplied at creation time, use the default prefix of "() " as the prefix (the environment folder name surrounded by parentheses, and with a trailing space after the last paren.
Special Guest: Brian Skinn.
Sponsored By:
- Talk Python Training: Online video courses for Python developers
- HoneyBadger: When bad things happen, it's nice to know that Honeybadger has your back. 30% off for first 6 months when you mention Test & Code Podcast when signing up.
- PyCharm Professional: Try PyCharm Pro for 4 months and learn how PyCharm will save you time. Promo Code: TESTANDCODE22
Links:
06/08/20 • 51 min
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 fixtures and plugins and other testing tools that work great with pytest
- tox
- GitHub Actions
- Coverage.py
- Selenium + splinter with pytest-splinter
- Hypothesis
And then our list of pytest plugins:
- pytest-sugar
- pytest-cov
- pytest-stress
- pytest-repeat
- pytest-instafail
- pytest-metadata
- pytest-randomly
- pytest-xdist
- pytest-flake8
- pytest-timeout
- pytest-spec
- pytest-picked
- pytest-freezegun
- pytest-check
- fluentcheck
That last one isn't a plugin, but we also talked about pytest-splinter at the beginning. So I think it still counts as 15.
Special Guest: Michael Kennedy.
Sponsored By:
- PyCharm Professional: Try PyCharm Pro for 4 months and learn how PyCharm will save you time. Promo Code: TESTANDCODE22
Links:
- pytest-sugar — changes the default look and feel of pyptest (e.g. progressbar, show tests that fail instantly)
- pytest-cov — run coverage.py from pytest
- pytest-stress — allows you to loop tests for a user defined amount of time.
- pytest-repeat — for repeating test execution
- pytest-instafail — shows failures and errors instantly instead of waiting until the end of test session.
- pytest-metadata — for accessing test session metadata
- pytest-randomly — randomly order tests and control random.seed
- pytest-xdist — distributed testing
- pytest-flake8 — pytest plugin to run flake8
- pytest-timeout — terminate tests after a certain timeout
- pytest-spec — display test execution output like a specification
- pytest-picked — run the tests related to the changed files (according to Git)
- pytest-freezegun — easily freeze time
- pytest-check — allows multiple failures per test
- fluentcheck — fluent assertions
- episode 104 — Top 28 pytest plugins with Anthony Sottile
- Python Testing with pytest — The easiest way to get up to speed with pytest fast. There's also a chapter dedicated to plugins that also teaches you how to write and test your own plugins.
- tox
- GitHub Actions
- Coverage.py
- pytest-splinter — provides a set of fixtures to use splinter for browser testing
- splinter — makes it easy to write automated tests of web applications
- hypothesis — property-based t...
Python + Django + Rich + Testing == Awesome
Test & Code
05/11/22 • 20 min
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:
Show more best episodes
Show more best episodes
FAQ
How many episodes does Test & Code have?
Test & Code currently has 223 episodes available.
What topics does Test & Code cover?
The podcast is about How To, Software, Podcasts, Technology, Education, Python and Programming.
What is the most popular episode on Test & Code?
The episode title 'Boost Your Django DX - Adam Johnson' is the most popular.
What is the average episode length on Test & Code?
The average episode length on Test & Code is 32 minutes.
How often are episodes of Test & Code released?
Episodes of Test & Code are typically released every 9 days, 10 hours.
When was the first episode of Test & Code?
The first episode of Test & Code was released on Aug 20, 2015.
Show more FAQ
Show more FAQ