Discover this podcast and so much more

Podcasts are free to enjoy without a subscription. We also offer ebooks, audiobooks, and so much more for just $11.99/month.

125: pytest 6 - Anthony Sottile

125: pytest 6 - Anthony Sottile

FromTest and Code


125: pytest 6 - Anthony Sottile

FromTest and Code

ratings:
Length:
60 minutes
Released:
Aug 7, 2020
Format:
Podcast episode

Description

pytest 6 is out. Specifically, 6.0.1, as of July 31.
And there's lots to be excited about.
Anthony Sottile joins the show to discuss features, improvements, documentation updates and more.
Full release notes / changelog (https://docs.pytest.org/en/stable/changelog.html)
Some of what we talk about:
How to update (at least, how I do it)
Run your test suites with 5.4.3 or whatever the last version you were using
Update to 6
Run again. Same output? Probably good.
If there are any warnings, maybe fix those.
You can also run with pytest -W error to turn warnings into errors.
Then find out all the cool stuff you can do now
New Features
pytest now supports pyproject.toml files for configuration.
but remember, toml syntax is different than ini files. mostly quotes are needed
pytest now includes inline type annotations and exposes them to user programs.
Most of the user-facing API is covered, as well as internal code.
New command-line flags --no-header and --no-summary
A warning is now shown when an unknown key is read from a config INI file.
The --strict-config flag has been added to treat these warnings as errors.
New required_plugins configuration option allows the user to specify a list of plugins,
including version information, that are required for pytest to run.
An error is raised if any required plugins are not found when running pytest.
Improvements
You can now pass output to things like less and head that close the pipe passed to them.
thank you!!!
Improved precision of test durations measurement.
use --durations=10 -vv to capture and show durations
Rich comparison for dataclasses and attrs-classes is now recursive.
pytest --version now displays just the pytest version,
while pytest --version --version displays more verbose information including plugins.
--junitxml now includes the exception cause in the message XML
attribute for failures during setup and teardown.
Improved Documentation
Add a note about --strict and --strict-markers and the preference for the latter one.
Explain indirect parametrization and markers for fixtures.
Bug Fixes
Deprecations
Trivial/Internal Changes
Breaking Changes you might need to care about before upgrading
PytestDeprecationWarning are now errors by default.
Check the deprecations and removals (https://docs.pytest.org/en/latest/deprecations.html)
page if you are curious.
-k and -m internals were rewritten to stop using eval(), this results in a few slight changes but overall makes them much more consistent
testdir.run().parseoutcomes() now always returns the parsed nouns in plural form.
I'd say that's an improvement
Special Guest: Anthony Sottile.
Released:
Aug 7, 2020
Format:
Podcast episode

Titles in the series (100)

Test & Code is a weekly podcast hosted by Brian Okken. The show covers a wide array of topics including software engineering, 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.