The archive has a complete list of posts in reverse chronologogical order (most recent at top).
That’s not the best for reading things in a reasonable order.
This page is split into topics and posts from each topic in a somewhat more reasonable order.
Resources
- Python Testing with pytest, 2nd Edition - book - Great for learning pytest offline
- pytest Courses - video - Great for learning pytest online
- PythonTest Community - Discord community focused on pytest - ask/answer pytest and other testing questions
pytest
- pytest introduction
- Running unittest from pytest
- Running doctest from pytest
- pytest debug print logging in real time
- Run a single test class with unittest and pytest
- pytest support for unittest style fixtures
- pytest tips and tricks
- pytest 8 is here
- Testing argparse Applications
pytest fixtures
- pytest fixtures nuts and bolts - revisited
- pytest fixtures nuts and bolts
- pytest xUnit style fixtures
- Basic pytest fixtures example
- Using pytest autouse fixtures
- Using pytest fixtures with mark.usefixtures
- pytest fixture teardown
- pytest fixture return value
- pytest fixture scope
- Parametrizing pytest fixtures with params
- Using multiple pytest fixtures
- Modularity - pytest fixtures using other fixtures
- Using pytest fixtures by naming them
- pytest session scoped fixtures
- Mixing pytest fixture scope
- Testing some tidbits with pytest
- Unravelling t-strings with pytest
pytest plugins
- Delayed assert / multiple failures per test
- pytest delayed assert / multiple failure plugin, iteration 1
- pytest expect fixture plugin, iteration 1
- pytest slow order
- Finding the top pytest plugins
- Top pytest Plugins
Python
- Python regex Search and Replace Examples
- I’m annoyed with Python’s ternary operator
- tip: dictionary get() works like getattr
- Pinning Application Dependencies with pip-tools compile
- Installing Python 3.11 on Mac or Windows
- Testing with Python 3.12
- Fixing Circular Imports in Python with Protocol
- Upgrading to Python 3.12 and my battle with virtualenv cache
TDD
Testing Strategy
- Software API/CLI interface adapters
- Complete coverage testing from the bottom of the pyramid up is a bad idea
- Why Most Unit Testing is Waste
- Test First Programming / Test First Development
- Given-When-Then
doctest
unittest
- unittest introduction
- Running unittest from pytest
- unittest fixture syntax and flow reference
- What happens when unittest fixtures fail
- Run a single test class with unittest and pytest
- pytest support for unittest style fixtures
perl
nose
Community
Publications and Talks
- Python featured in April issue of PragPub
- Sharing is Caring - pytest fixture edition - PyBay 2022
- Sharing is Caring - Sharing pytest Fixtures - PyCascades 2023