Test & Code cover image

Test & Code

Latest episodes

undefined
Jul 24, 2020 β€’ 23min

123: GitHub Actions - Tania Allard

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 regarding setting up a Python project to use Actions. Some of the topics covered: How to get started with GitHub Actions for a Python project? What are workflow files? Does it matter what the file name is called? Can I have / Should I have more than one workflow? Special Guest: Tania Allard.Sponsored By:Datadog: Modern monitoring & security. See inside any stack, any app, at any scale, anywhere. Visit testandcode.com/datadog to get started.Links:Using Python with GitHub Actions - GitHub Docsawesome-actions β€” A curated list of awesome actions to use on GitHub β˜… Support this podcast on Patreon β˜…
undefined
Jul 16, 2020 β€’ 36min

122: Better Resumes for Software Engineers - Randall Kanna

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, and in turn, help us have better careers.Special Guest: Randall Kanna.Sponsored By:PyCharm Professional: Try PyCharm Pro for 4 months and learn how PyCharm will save you time. Promo Code: TESTANDCODE22Links:The Standout Developer β€” link includes discount β˜… Support this podcast on Patreon β˜…
undefined
Jul 10, 2020 β€’ 49min

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

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 printers What are the different types of 3D printers? Where are 3D printed industrial parts being used? Why use one type of additive manufacturing over another? Python in 3D printing hardware. What are Finite State Machines, FSMs? Benefits of FSMs for testing, logging, and breaking a complex behavior into small testable parts. Benefits of simulation in writing and testing software to control hardware. Special Guest: Len Wanger.Sponsored By:CircleCI: Continuous integration and deployment with faster performance, complete control, and unparalleled flexibility.Datadog: Modern monitoring & security. See inside any stack, any app, at any scale, anywhere. Visit testandcode.com/datadog to get started.Links:pystate β€” Python package for co-routine base state machinesImpossible Objects β€” Composite 3D PrintingFinite-state machine, FSM β˜… Support this podcast on Patreon β˜…
undefined
Jul 3, 2020 β€’ 44min

120: FastAPI & Typer - SebastiΓ‘n RamΓ­rez

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 intended to make it easier to develop, test, and debug applications using FastAPI and Typer. The person behind FastAPI and Typer is SebastiΓ‘n RamΓ­rez. SebastiΓ‘n is on the show today, and we discuss: FastAPI Rest APIs Swagger UI Future features of FastAPI Starlette Typer Click Testing with Typer and Click Typer autocompletion Typer CLI Special Guest: SebastiΓ‘n RamΓ­rez.Sponsored By:PyCharm Professional: Try PyCharm Pro for 4 months and learn how PyCharm will save you time. Promo Code: TESTANDCODE22Links:ExplosionFastAPITyperOpenAPI Specification JSON SchemaOAuth 2.0StarlettepydanticSwagger UI β€” REST API Documentation ToolTesting - TyperClickTesting Click ApplicationsCLI Option autocompletion - TyperTyper CLI - completion for small scripts β˜… Support this podcast on Patreon β˜…
undefined
Jun 26, 2020 β€’ 36min

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

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 installs the need for standardization configuration of other tools in pyproject.toml And then get off on tangents and talk about: why it's good to have packages like pip, toml, setuptools, wheel, etc not part of the standard library should we remove some stuff from the standard library the standard library using unittest for testing the standard library why not hypothesis I didn't bring up "why not pytest?" but you know I was thinking it. why CPython and not C++Python and more Special Guest: Brett Cannon.Sponsored By:CircleCI: Continuous integration and deployment with faster performance, complete control, and unparalleled flexibility.Datadog: Modern monitoring & security. See inside any stack, any app, at any scale, anywhere. Visit testandcode.com/datadog to get started.Links:episode 52: pyproject.toml : the future of Python packaging - Brett CannonPython Packaging AuthorityPEP 517 -- A build-system independent format for source treesPEP 518 -- Specifying Minimum Build System Requirements for Python ProjectsWhat the heck is pyproject.toml?Flit PoetryensconstomlsetuptoolsdistutilspipHTTPX β˜… Support this podcast on Patreon β˜…
undefined
Jun 26, 2020 β€’ 43min

118: Code Coverage and 100% Coverage

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 using it. Should you try for 100% coverage? What code can and should you exclude? What about targets? I've been asked many times what I think about code coverage or test coverage. This episode is a train of thought brain dump on what I think about code coverage. We'll talk about: how I use code coverage to help me write source code line coverage and branch coverage behavior coverage using tests to ask and answer questions about the system under test how to target coverage just to the code you care about excluding code good reasons and bad reasons to exclude code And also the Pareto Principle or 80/20 rule, and the law of diminishing returns and how that applies (or doesn't) to test coverage.Sponsored By:PyCharm Professional: Try PyCharm Pro for 4 months and learn how PyCharm will save you time. Promo Code: TESTANDCODE22Links:Coverage.pypytest-cov β˜… Support this podcast on Patreon β˜…
undefined
Jun 18, 2020 β€’ 51min

117: Python extension for VS Code - Brett Cannon

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, including: pytest support virtual environment support how settings work, including user and workspace settings multi root projects testing Python in VS Code debugging and pydevd jump to cursor feature upcoming features Special Guest: Brett Cannon.Sponsored By:PyBites Code Challenges: Get some expert help in setting your career strategy in Python.ConfigCat.com: Release features faster with less risk with ConfigCat feature flags. Promo Code: TESTANDCODELinks:Brett Cannon on ChangelogJohn WickBallerinaFrank Willison AwardPython extension for VS Codeepisode 117 : How IDEs can make software testing easier - Paul EverittUser and Workspace Settingsvirtual environmentsTesting Python in VS CodepydevdJump to Cursor in Feb VS Code Python blog β˜… Support this podcast on Patreon β˜…
undefined
Jun 8, 2020 β€’ 51min

116: 15 amazing pytest plugins - Michael Kennedy

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: TESTANDCODE22Links:pytest-sugar β€” changes the default look and feel of pyptest (e.g. progressbar, show tests that fail instantly)pytest-cov β€” run coverage.py from pytestpytest-stress β€” allows you to loop tests for a user defined amount of time.pytest-repeat β€” for repeating test executionpytest-instafail β€” shows failures and errors instantly instead of waiting until the end of test session.pytest-metadata β€” for accessing test session metadatapytest-randomly β€” randomly order tests and control random.seedpytest-xdist β€” distributed testingpytest-flake8 β€” pytest plugin to run flake8pytest-timeout β€” terminate tests after a certain timeoutpytest-spec β€” display test execution output like a specificationpytest-picked β€” run the tests related to the changed files (according to Git)pytest-freezegun β€” easily freeze timepytest-check β€” allows multiple failures per testfluentcheck β€” fluent assertionsepisode 104 β€” Top 28 pytest plugins with Anthony SottilePython 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.toxGitHub ActionsCoverage.pypytest-splinter β€” provides a set of fixtures to use splinter for browser testingsplinter β€” makes it easy to write automated tests of web applicationshypothesis β€” property-based testingTalk Python Episode #267 β€” This episode is a cross post with Talk Python β˜… Support this podcast on Patreon β˜…
undefined
May 30, 2020 β€’ 42min

115: Catching up with Nina Zakharenko

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 starting something like the hallway track, online, on twitch, and it's already going, so check out the first episode of Python Tea. Interesting coincidence is that this episode is kind of like a hallway track discussion between Nina and Brian. We've had Nina on the show a couple times before, but it's been a while. In 2018, we talked about Mentoring on episode 44. In 2019, we talked about giving Memorable Tech Talks in episode 71. In this episode, we catch up with Nina, find out what she's doing, and talk about a bunch of stuff, including: Live Coding Online Conferences Microsoft Python team Python Tea, an online hallway track Q&A with Python for VS Code team Python on hardware Adafruit Device Simulator Express CircuitPython Tricking out your command prompt Zsh and Oh My Zsh Emacs vs vi key bindings for shells Working from home Special Guest: Nina Zakharenko.Sponsored By:Python Morsels: Level up your Python skills with challenges and expert advice.ConfigCat.com: Release features faster with less risk with ConfigCat feature flags. Promo Code: TESTANDCODELinks:nnjaio - TwitchNina Zakharenko πŸ’œπŸ (@nnja) / TwitterDevice Simulator Express - Visual Studio MarketplaceInitial code for Microsoft's PyBadge at PyCon 2020Goodbye Print, Hello Debugger! - Nina Zakharenko - PyCon 2020 Talk π™½πš’πš—πšŠ πš‰πšŠπš”πš‘πšŠπš›πšŽπš—πš”πš˜ πŸ’œπŸ - DEV.toPython Tea AnnouncementThe Live Coders Conference β˜… Support this podcast on Patreon β˜…
undefined
May 24, 2020 β€’ 31min

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

"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 responsibility, and to that end, the PSF Board Directors help out quite a bit. If you want to be a part of the board, you can. There's an election coming up right around the corner and you gotta get your nomination in by May 31. You can also join the PSF if you want to vote for who gets to be part of the board. But what does it really mean to be on the Board, and what are some of the things the PSF does? To help answer those questions, I've got Ewa Jodlowska, the PSF Executive Director, and Christopher Neugebauer, a current board member, on the show today. I've also got some great links in the show notes if we don't answer your questions and you want to find out more.Special Guests: Christopher Neugebauer and Ewa Jodlowska.Sponsored By:PyCharm Professional: Try PyCharm Pro for 4 months and learn how PyCharm will save you time. Promo Code: TESTANDCODE22Links:Latest PSF Board Elections DiscussionPython Software FoundationOverview of ElectionsDuties and Responsibilities of DirectorsLife as a Python Software Foundation Director - YouTube β˜… Support this podcast on Patreon β˜…

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