Test & Code

Test & Code

Download on the App Store

Test & Code episodes

  • 50: Flaky Tests and How to Deal with Them

    Anthony Shaw joins Brian to discuss flaky tests and flaky test suites.

    • What are flaky tests?
    • Is it the same as fragile tests?
    • Why are they bad?
    • How do we deal with them?
    • What causes flakiness?
    • How can we fix them?
    • How can we avoid them?
    • Proactively rooting out flakiness
    • Test design
    • GUI tests
    • Sharing solutions
    • Special Guest: Anthony Shaw.

      Sponsored By:

      • DigitalOceanGet started with a free $100 credit

      Support Test & Code - Software Testing, Development, Python

      Links:

      • Dropbox article on flaky tests
      • Microsoft article on flaky tests
      • pytest-rerunfailures: a py.test plugin that re-runs failed tests up to -n times to eliminate flakey failures
      • pytest-randomly: Pytest plugin to randomly order tests and control random.seed
      • pytest-random-order: pytest plugin to randomise the order of tests with some control over the randomness
      • math.isclose()
      • numpy.isclose()
      • pytest.approx() — approx
      • Anthony's testing article on RealPython
      • Ghost Inspector
      • wily: A Python application for tracking, reporting on timing and complexity in tests
      33 min
    • 49: tox - Oliver Bestwalter

      tox is a simple yet powerful tool that is used by many Python projects.

      tox is not just a tool to help you test a Python project against multiple versions of Python. In this interview, Oliver and Brian just scratch the surface of this simple yet powerful automation tool.

      This is from the tox documentation:

      tox is a generic virtualenv management and test command line tool you can use for:

      • checking your package installs correctly with different Python versions and interpreters
      • running your tests in each of the environments, configuring your test tool of choice
      • acting as a frontend to Continuous Integration servers, greatly reducing boilerplate and merging CI and shell-based testing.
      • Yet tox is so much more. It can help create development environments, hold all of your admin scripts, ...

        I hope you enjoy this wonderful discussion of tox with Oliver Bestwalter, one of the core maintainers of tox.

        Special Guest: Oliver Bestwalter.

        Links:

        • tox project documentation
        • tox recreate : "Have you turned it off and on again?" for tox
        • "Hello world" of tox
        • tox also has plugins
        • talk by Bernát Gábor about a tox based workflow at EuroPython 2018
        • adding a description to your environments
        • detox - distributed tox
        • devpi: private package index
        • PyCharm plugin to easily set the project interpreter via context menu: PyVenvmanage
        • power mode in atom
        • Power Mode for PyCharm
        56 min
      • 49: tox - Oliver Bestwalter

        tox is a simple yet powerful tool that is used by many Python projects.

        tox is not just a tool to help you test a Python project against multiple versions of Python. In this interview, Oliver and Brian just scratch the surface of this simple yet powerful automation tool.

        This is from the tox documentation:

        tox is a generic virtualenv management and test command line tool you can use for:

        • checking your package installs correctly with different Python versions and interpreters
        • running your tests in each of the environments, configuring your test tool of choice
        • acting as a frontend to Continuous Integration servers, greatly reducing boilerplate and merging CI and shell-based testing.
        • Yet tox is so much more. It can help create development environments, hold all of your admin scripts, ...

          I hope you enjoy this wonderful discussion of tox with Oliver Bestwalter, one of the core maintainers of tox.

          Special Guest: Oliver Bestwalter.

          Sponsored By:

          • PyCharm ProfessionalTry 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: TESTNCODE2019

          Support Test & Code - Software Testing, Development, Python

          Links:

          • tox project documentation
          • tox recreate : "Have you turned it off and on again?" for tox
          • "Hello world" of tox
          • tox also has plugins
          • talk by Bernát Gábor about a tox based workflow at EuroPython 2018
          • adding a description to your environments
          • detox - distributed tox
          • devpi: private package index
          • PyCharm plugin to easily set the project interpreter via context menu: PyVenvmanage
          • power mode in atom
          • Power Mode for PyCharm
          56 min
        • 48: A GUI for pytest

          The story of how I came to find a good user interface for running and debugging automated tests is interleaved with a multi-year effort of mine to have a test workflow that’s works smoothly with product development and actually speeds things up. It’s also interleaved with the origins of the blog pythontesting.net, this podcast, and the pytest book I wrote with Pragmatic.

          It’s not a long story. And it has a happy ending. Well. It’s not over. But I’m happy with where we are now. I’m also hoping that this tale of my dedication to, or obsession with, quality and developer efficiency helps you in your own efforts to make your daily workflow better and to extend that to try to increase the efficiency of those you work with.

          Links:

          • pythontesting.net
          13 min
        • 48: A GUI for pytest

          The story of how I came to find a good user interface for running and debugging automated tests is interleaved with a multi-year effort of mine to have a test workflow that’s works smoothly with product development and actually speeds things up. It’s also interleaved with the origins of the blog pythontesting.net, this podcast, and the pytest book I wrote with Pragmatic.

          It’s not a long story. And it has a happy ending. Well. It’s not over. But I’m happy with where we are now. I’m also hoping that this tale of my dedication to, or obsession with, quality and developer efficiency helps you in your own efforts to make your daily workflow better and to extend that to try to increase the efficiency of those you work with.

          Sponsored By:

          • Python Testing with pytestSimple, Rapid, Effective, and Scalable
          The fastest way to learn pytest. From 0 to expert in under 200 pages.
        • Patreon SupportersHelp support the show with as little as $1 per month.
        • Funds help pay for expenses associated with the show.

          Support Test & Code - Software Testing, Development, Python

          Links:

          • pythontesting.net
          13 min
        • 47: Automation Panda - Andy Knight

          Interview with Andy Knight, the Automation Panda.

          • Selenium & WebDriver
          • Headless Chrome
          • Gherkin
          • BDD
          • Given When Then
          • pytest-bdd
          • PyCharm
          • Writing Good Gherkin
          • Overhead of Gherkin and if it's worth it
          • When to use pytest vs pytest-bdd
          • The art of test automation
          • Special Guest: Andy Knight.

            Links:

            • Automation Panda | A blog for software development and testing
            • Karate REST API test framework
            • BDD | Automation Panda
            • Testing | Automation Panda
            • The pytest Book
            40 min
          • 47: Automation Panda - Andy Knight

            Interview with Andy Knight, the Automation Panda.

            • Selenium & WebDriver
            • Headless Chrome
            • Gherkin
            • BDD
            • Given When Then
            • pytest-bdd
            • PyCharm
            • Writing Good Gherkin
            • Overhead of Gherkin and if it's worth it
            • When to use pytest vs pytest-bdd
            • The art of test automation
            • Special Guest: Andy Knight.

              Sponsored By:

              • PyCharm ProfessionalTry 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: TESTNCODE2019

              Support Test & Code - Software Testing, Development, Python

              Links:

              • Automation Panda | A blog for software development and testing
              • Karate REST API test framework
              • BDD | Automation Panda
              • Testing | Automation Panda
              • The pytest Book
              39 min
            • 46: Testing Hard To Test Applications - Anthony Shaw

              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.

              43 min
            • 46: Testing Hard To Test Applications - Anthony Shaw

              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:

              • Patreon SupportersHelp support the show with as little as $1 per month.
              Funds help pay for expenses associated with the show.

              Support Test & Code - Software Testing, Development, Python

              43 min
            • 45: David Heinemeier Hansson - Software Development and Testing, TDD, and exploratory QA

              David Heinemeier Hansson is the creator of Ruby on Rails, founder & CTO at Basecamp (formerly 37signals). He's a best selling author, public speaker, and even a Le Mans class winning racing driver.

              All of that, of course, is awesome. But that's not why I asked him on the show. In 2014, during a RailsConf keynote, he started a discussion about damage caused by TDD. This was followed by a few blog posts, and then a series of recorded hangouts with Martin Fowler and Kent Beck. This is what I wanted to talk with David about; this unconventional yet practical and intuitive view of how testing and development work together.

              It's a great discussion. I think you'll get a lot out of it.

              Special Guest: David Heinemeier Hansson.

              Links:

              • Is TDD dead? - Part 1
              • My reaction to "Is TDD Dead?", including links to the other parts of the video series
              • RailsConf 2014 - Keynote: Writing Software by David Heinemeier Hansson - YouTube
              • TDD is dead. Long live testing. (DHH)
              • Test-induced design damage (DHH)
              • Slow database test fallacy (DHH)
              41 min

            About Test & Code

            From the publisher's feed

            The Python Test Podcast hosted by Brian Okken

            More shows like Test & Code

            Radiolab by WNYC Studios

            Radiolab

            43,853 Listeners

            Software Engineering Daily by Software Engineering Daily

            Software Engineering Daily

            623 Listeners

            Heavy Networking by Packet Pushers

            Heavy Networking

            327 Listeners

            Talk Python To Me by Michael Kennedy

            Talk Python To Me

            582 Listeners

            Python Bytes by Michael Kennedy and Calvin Hendryx-Parker

            Python Bytes

            213 Listeners

            Darknet Diaries by Jack Rhysider

            Darknet Diaries

            8,059 Listeners

            The Real Python Podcast by Real Python

            The Real Python Podcast

            139 Listeners

            Unexplainable by Vox

            Unexplainable

            2,313 Listeners

            Network Automation Nerds by Packet Pushers

            Network Automation Nerds

            5 Listeners