Test & Code - Python Testing & Development

  • Author: Vários
  • Narrator: Vários
  • Publisher: Podcast
  • Duration: 122:32:21
  • More information

Informações:

Synopsis

Test & Code is a weekly podcast hosted by Brian Okken.The show covers a wide array of topics including software development, testing, Python programming, and many related topics. When we get into the implementation specifics, that's usually Python, such as Python packaging, tox, pytest, and unittest. However, well over half of the topics are language agnostic, such as data science, DevOps, TDD, public speaking, mentoring, feature testing, NoSQL databases, end to end testing, automation, continuous integration, development methods, Selenium, the testing pyramid, and DevOps.

Episodes

  • 117: Python extension for VS Code - Brett Cannon

    18/06/2020 Duration: 49min

    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 supportvirtual environment supporthow settings work, including user and workspace settingsmulti root projectstesting Python in VS Codedebugging and pydevdjump to cursor featureupcoming featuresSpecial Guest: Brett Cannon.Links: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

  • 116: 15 amazing pytest plugins - Michael Kennedy

    08/06/2020 Duration: 50min

    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 pytesttoxGitHub ActionsCoverage.pySelenium + splinter with pytest-splinterHypothesisAnd then our list of pytest plugins:pytest-sugar pytest-cov pytest-stress pytest-repeat pytest-instafail pytest-metadatapytest-randomlypytest-xdist pytest-flake8 pytest-timeout pytest-spec pytest-picked pytest-freezegun pytest-check fluentcheckThat 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.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 pytestpytest-stress — allows you to loop tests for a user defined amount of ti

  • 115: Catching up with Nina Zakharenko

    30/05/2020 Duration: 40min

    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 CodingOnline ConferencesMicrosoft Python teamPython Tea, an online hallway trackQ&A with Python for VS Code teamPython on hardwareAdafruitDevice Simulator ExpressCircuitPythonTricking out your command promptZsh and Oh My ZshEmacs vs v

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

    24/05/2020 Duration: 29min

    "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.Links:Latest PSF Board Elections DiscussionPython Soft

  • 113: Technical Debt - James Smith

    15/05/2020 Duration: 28min

    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 retention.But really, what is technical debt? Can we measure it? How do we reduce it, and when?James Smith, the CEO of Bugsnag, joins the show to talk about technical debt and all of these questions.Special Guest: James Smith.

  • 112: Six Principles of Readable Tests - David Seddon

    08/05/2020 Duration: 44min

    "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 taken the care to make it readable.David Seddon came up with 6 principles to help us write more readable tests. We discuss these, as well as more benefits of readable tests.David's 6 Principles of Readable Tests:Profit from the work of othersPut naming to workShow only what mattersDon’t repeat yourselfArrange, act, assertAim highSpecial Guest: David Seddon.Links:How to write readable tests (presentation) · David SeddonHow to write readable tests (slides)pytestWebTest factory_boydjango-webtest

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

    02/05/2020 Duration: 46min

    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 introduced subtests in Python 3.4. pytest introduced support for subtests with changes in pytest 4.4 and a plugin, called pytest-subtests. Subtests are still not really used that much.But really, what are they? When could you use them? And more importantly, what should you watch out for if you decide to use them?That's what Paul Ganssle and I will be talking about today.Special Guest: Paul Ganssle.Links:Subtests in Python — Paul's article on subtestssubtests in unittest - Python docs pytest-subtests: plugin to support subtests in pytestpytest-check: A pytest plugin that allows multiple failures per test.

  • 110: Testing Django - from unittest to pytest - Adam Parkin

    25/04/2020 Duration: 24min

    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 about migrating an existing Django project from unittest to pytest. Adam tells us just how easy this is.Special Guest: Adam Parkin.Links:Django Tutorial, on testingThe Django docs on testing & the test databaseThe Django docs on the TestCase classpytest-django docs

  • 109: Testing in Financial Services - Eric Bergemann

    14/04/2020 Duration: 28min

    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 domainCI/CD : Continuous Integration, Continuous DeploymentTDD : Test Driven DevelopmentConfidence from testable applicationsTesting strategies to add coverage to legacy systemsTesting the data and test cases themselvesDevOpsContinuous testingManual testing proceduresBDD & GherkinHiring in vs training industry knowledgeSpecial Guest: Eric Bergemann.Links:ParagonThe Phoenix Project: A Novel about IT, DevOps, and Helping Your Business Win

  • 108: PySpark - Jonathan Rioux

    09/04/2020 Duration: 31min

    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 task.Johnathan Rioux, author of "PySpark in Action", joins the show and gives us a great introduction of Spark and PySpark to help us decide how to get started and decide whether or not to decide if Spark and PySpark are right you.Special Guest: Jonathan Rioux.Links:PySpark in ActionSparkPySpark documentationJoel Grus, livecoding

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

    27/03/2020 Duration: 35min

    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 tests."In this episode Alexander Hultnér introduces us to property based testing in Python with Hypothesis.Some topics covered:What is property based testingThinking differently for property based testingUsing hypothesis / property based testing in conjunction with normal testingFailures saved and re-runWhat parts of development/testing is best suited for hypothesis / property based testing Comparing function implementationsTesting against REST APIs that use Open API / Swagger with schemathesis Changing the number of tests in different test environmentsSystem, integration, end to end, and unit testsSpecial Guest: Alexander Hultnér.Links:Hypothesis homeHypothesis docsTest Fast, Fix More - Property based testing with Hypothesis by Alexander Hultnér - YouTubeQuickcheck, Gran

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

    20/03/2020 Duration: 50min

    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 missing.The conversation also includes topics around being welcoming to new contributors for both open source and professional projects.We talk about a lot of topics, and it's a lot of fun. But it's also important. Because IDEs can make testing Some topics discussed:Making testing more accessibleTest First vs teaching testing lastTDD workflowAutorunRerunning last failuresDifferent ways to run different levels of testsCommand line flags and how to access them in IDEspytest.inizooming in and out of test levelsrunning parametrizationsrunning tests with coverage and profilingparametrize vs parameterizeparametrization identifierspytest fixture supportglobal configurations / configuration templatescoverage and testing and being inviting to new contributorsconfidence in changes

  • 105: TAP: Test Anything Protocol - Matt Layman

    11/03/2020 Duration: 29min

    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, and his Django podcast, Django Riffs.Matt is also the maintainer of tap.py and pytest-tap, two tools that bring the Test Anything Protocol to Python.In this episode, Matt and I discuss TAP, it's history, his involvement, and some cool use cases for it.Special Guest: Matt Layman.Links:mattlayman.comDjango Riffs, a podcast for learning Django · Matt LaymanTest Anything Protocolpytest-tap: Test Anything Protocol (TAP) reporting plugin for pytesttappy - TAP tools for Python 

  • 104: Top 28 pytest plugins - Anthony Sottile

    04/03/2020 Duration: 45min

    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 list): pytest-cov pytest-timeout pytest-xdist pytest-mock pytest-runner pytest-instafail pytest-django pytest-html pytest-metadatapytest-asynciopytest-split-testspytest-sugarpytest-rerunfailurespytest-envpytest-cachepytest-flaskpytest-benchmarkpytest-orderingpytest-watchpytest-pythonpathpytest-flake8pytest-pep8pytest-repeatpytest-pylintpytest-randomlypytest-seleniumpytest-mypypytest-freezegunHonorable mention:pytest-blackpytest-emojipytest-pooSpecial Guest: Anthony Sottile.Links:PyPI Download StatsTop PyPI Packages: A monthly dump of the 4,000 most-downloaded packages from PyPITest & Code 25: Selenium, pytest, Mozilla – Dave Huntpre-commit

  • 103: Django - Lacey Williams Henschel

    01/03/2020 Duration: 26min

    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 Girls TutorialDjangoConSoftware TestingUsing tests during learningpytest-djangotesting DjangoWagtailSpecial Guest: Lacey Williams Henschel.Links:Django Django Girls Django Girls TutorialDjangoCon US 2020 Django: Under the HoodPyDataPyCascadesDjango REST frameworkpytest-djangoWagtail CMS - Django Content Management System

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

    27/02/2020 Duration: 41min

    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 systems involving third party interfaces and APIs.Topics Harry's new book, "Architecture Patterns with Python". a.k.a. Cosmic Python TDD : Test Driven DevelopmentTest PyramidTradeoffs of different architectural choicesMocks and their pitfallsAvoiding mocksSeparating conceptual business logicDependency injectionDependency inversionIdentifying external dependenciesInterface adapters to mimize the exposed surface area of external dependenciesLondon School vs Classic/Detroit School of TDDTesting strategies for testing external REST APIsLinks:Cosmic Python - Simple Patterns for Building Complex ApplicationsArchitecture Patterns with Python - on AmazonHarry Percival (@hjwp) / TwitterBob Gregory (@bob_the_mighty) / Twittervcrpy · PyPIWriting tests for external API callsStop Using Mocks (f

  • 101: Application Security - Anthony Shaw

    19/02/2020 Duration: 45min

    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, Anthony and I discuss his security plugin, but also application security in general, as well as other security components you need to consider.Security is something every team needs to think about, whether you are a single person team, a small startup, or a large corporation.Anthony and I also discuss where to start if it's just a few of you, or even just one of you.Topics include:Finding security risks while writing code.What are the risks for your applications.Thinking about attack surfaces.Static and dynamic code analysis.Securing the environment an app is running in.Tools for scanning live sites for vulnerabilities.Secret management.Hashing algorithms.Authentication systems.and Anthony's upcoming cPython Internals book.Special Guest: Anthony Shaw.Links:Python Secu

  • 100: A/B Testing - Leemay Nassery

    13/02/2020 Duration: 35min

    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 with Leemay Nassery.Special Guest: Leemay Nassery.

  • 99: Software Maintenance and Chess

    30/01/2020 Duration: 14min

    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

    21/01/2020 Duration: 32min

    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 updates its database on each test execution, so it works independently of version control.In this episode, I talk with testmon creator Tibor Arpas about testmon, about it's use and how it works.Special Guest: Tibor Arpas.Links:testmon.orgDetermining affected testsTibor's post on using pytest in PyCharmruntime-info plugin for PyCharm

page 7 from 12