This is intended to find the most popular (as determined by download count) pytest plugins, as plugins usually have “pytest” in the name.
Counts are the number of downloads over 30 days.

The list

Data last updated: 2025-03-01 20:10:22

# Package Downloads Summary
1 pytest-cov 52,756,102 pytest plugin for measuring coverage. (Test & Code episode pytest-cov : The pytest plugin for measuring coverage)
2 pytest-xdist 30,473,724 pytest xdist plugin for distributed testing, most importantly across multiple CPUs
3 pytest-mock 28,692,395 Thin-wrapper around the mock package for easier use with pytest (Test & Code episode pytest-mock : Mocking in pytest)
4 pytest-asyncio 25,492,959 pytest support for asyncio
5 hypothesis 16,593,577 A library for property-based testing (Includes a small pytest plugin.)
6 pytest-metadata 13,375,561 pytest plugin for test session metadata
7 pytest-timeout 11,386,124 pytest plugin to abort hanging tests
8 pytest-rerunfailures 9,644,811 pytest plugin to re-run tests to eliminate flaky failures
9 pytest-html 9,592,147 pytest plugin for generating HTML reports
10 pytest-random-order 6,639,851 Randomise the order in which pytest tests are run with some control over the randomness
11 pytest-localserver 5,708,737 pytest plugin to test server connections locally.
12 pytest-django 5,250,663 A Django plugin for pytest.
13 pytest-env 5,137,046 pytest plugin that allows you to add environment variables.
14 pytest-randomly 4,568,480 pytest plugin to randomly order tests and control random.seed.
15 pytest-split 4,279,818 pytest plugin which splits the test suite to equally sized sub suites based on test execution time.
16 pytest-json-report 3,344,859 A pytest plugin to report test results as JSON files
17 pytest-repeat 3,007,089 pytest plugin for repeating tests
18 pytest-custom-exit-code 2,933,554 Exit pytest test session with custom exit code in different scenarios
19 pytest-benchmark 2,581,769 A pytest fixture for benchmarking code. It will group the tests into rounds that are calibrated to the chosen timer.
20 allure-pytest 2,462,692 Allure pytest integration
21 pytest-sugar 2,363,569 pytest-sugar is a plugin for pytest that changes the default look and feel of pytest (e.g. progressbar, show tests that fail instantly).
22 pytest-base-url 2,164,450 pytest plugin for URL based testing
23 pytest-ordering 2,102,206 pytest plugin to run your tests in a specific order
24 pytest-order 2,047,509 pytest plugin to run your tests in a specific order
25 pytest-icdiff 1,900,063 use icdiff for better error messages in pytest assertions
26 pytest-instafail 1,881,091 pytest plugin to show failures instantly
27 pytest-socket 1,825,232 pytest Plugin to disable socket calls during tests
28 pytest-playwright 1,724,522 A pytest wrapper with fixtures for Playwright to automate web browsers
29 pytest-subtests 1,703,106 unittest subTest() support and subtests fixture
30 pytest-dotenv 1,534,333 A py.test plugin that parses environment files before running tests
31 pytest-assume 1,521,626 A pytest plugin that allows multiple failures per test
32 syrupy 1,503,619 pytest Snapshot Test Utility
33 pytest-check 1,475,485 A pytest plugin that allows multiple failures per test.
34 pytest-bdd 1,315,031 BDD for pytest
35 pytest-httpx 1,252,924 Send responses to httpx.
36 pytest-httpserver 1,170,201 pytest-httpserver is a httpserver for pytest
37 pytest-unordered 1,167,035 Test equality of unordered collections in pytest
38 pytest-postgresql 1,158,343 Postgresql fixtures and fixture factories for pytest.
39 pytest-profiling 1,122,674 Profiling plugin for py.test
40 pytest-dependency 1,056,298 Manage dependencies of tests
41 pytest-aiohttp 991,070 pytest plugin for aiohttp support
42 pytest-freezegun 931,458 Wrap tests with fixtures in freeze_time
43 pytest-factoryboy 857,781 Factory Boy support for pytest.
44 pytest-recording 835,703 A pytest plugin that allows you recording of network interactions via VCR.py
45 pytest-lazy-fixture 739,661 It helps to use fixtures in pytest.mark.parametrize
46 pytest-docker 726,584 Simple pytest fixtures for Docker and Docker Compose based tests
47 pytest-github-actions-annotate-failures 704,940 pytest plugin to annotate failed tests with a workflow command for GitHub Actions
48 pytest-azurepipelines 690,260 Formatting PyTest output for Azure Pipelines UI
49 pytest-retry 680,322 Adds the ability to retry flaky tests in CI environments
50 pytest-freezer 671,322 pytest plugin providing a fixture interface for spulec/freezegun
51 pytest-snapshot 639,084 A plugin for snapshot testing with pytest.
52 pytest-watch 615,997 Local continuous test runner with pytest and watchdog.
53 pytest-vcr 590,750 Plugin for managing VCR.py cassettes
54 pytest-celery 556,764 pytest plugin for Celery
55 pytest-deadfixtures 533,421 A simple plugin to list unused fixtures in pytest
56 pytest-clarity 530,727 A plugin providing an alternative, colourful diff output for failing assertions.
57 pytest-testinfra 521,151 Test infrastructures
58 pytest-nunit 499,790 A pytest plugin for generating NUnit3 test result XML output
59 pytest-reportlog 489,317 Replacement for the –resultlog option, focused in simplicity and extensibility
60 pytest-ansible 477,071 Plugin for pytest to simplify calling ansible modules from tests or fixtures
61 pytest-flakefinder 476,777 Runs tests multiple times to expose flakiness.
62 pytest-memray 475,208 A simple plugin to use with pytest
63 pytest-wake 463,795
64 flake8-pytest-style 458,614 A flake8 plugin checking common style issues or inconsistencies with pytest-based tests.
65 pytest-cases 450,918 Separate test code from test cases in pytest.
66 pytest-flask 450,256 A set of py.test fixtures to test Flask applications.
67 pytest-datadir 425,527 pytest plugin for test data directories and files
68 pytest-testmon 404,903 selects tests affected by changed files and methods
69 pytest-timeouts 392,966 Linux-only pytest plugin to control durations of various test case execution phases
70 pytest-alembic 349,359 A pytest plugin for verifying alembic migrations.
71 pytest-docker-tools 345,665 Docker integration tests for pytest
72 pytest-mypy 344,504 Mypy static type checker plugin for pytest
73 pytest-flake8 316,285 pytest plugin to check FLAKE8 requirements
74 pytest-reportportal 309,780 Agent for Reporting results of tests to the Report Portal
75 pytest-codspeed 285,136 pytest plugin to create CodSpeed benchmarks
76 pytest-watcher 269,736 Automatically rerun your tests on file modifications
77 pytest-pudb 262,732 pytest PuDB debugger integration
78 pytest-doctestplus 261,781 pytest plugin with advanced doctest features.
79 pytest-pylint 257,572 pytest plugin to check source code with pylint
80 pytest-variables 254,600 pytest plugin for providing variables to tests/fixtures
81 pytest-qt 245,564 pytest support for PyQt and PySide applications
82 pytest-explicit 233,686 A pytest plugin to ignore certain marked tests by default
83 pytest-timestamper 227,208 pytest plugin to add a timestamp prefix to the pytest output
84 pytest-spark 224,819 pytest plugin to run the tests with support of pyspark.
85 pytest-selenium 222,666 pytest plugin for Selenium
86 pytest-parametrized 217,807 pytest decorator for parametrizing tests with default iterables.
87 pytest-opentelemetry 213,743 A pytest plugin for instrumenting test runs via OpenTelemetry
88 pytest-test-groups 210,663 A pytest plugin for running a subset of your tests by splitting them in to equally sized groups.
89 pytest-incremental 208,394 an incremental test runner (pytest plugin)
90 pylint-pytest 208,051 A Pylint plugin to suppress pytest-related false positives.
91 pytest-describe 206,025 Describe-style plugin for pytest
92 pytest-subprocess 205,626 A plugin to fake subprocess for pytest
93 pytest-structlog 199,872 Structured logging assertions
94 pytest-remotedata 198,630 pytest plugin for controlling remote data access.
95 pytest-sftpserver 196,908 py.test plugin to locally test sftp server connections.
96 pytest-parametrization 195,767 Simpler PyTest parametrization
97 pytest-mpl 194,758 pytest plugin to help with testing figures output from Matplotlib
98 pytest-md-report 193,317 A pytest plugin to generate test outcomes reports with markdown table format.
99 pytest-lazy-fixtures 189,707 Allows you to use fixtures in @pytest.mark.parametrize.
100 pytest-pretty 186,486 pytest plugin for printing summary data as I want it
101 pytest-md 184,215 Plugin for generating Markdown reports for pytest results
102 pytest-homeassistant-custom-component 178,653 Experimental package to automatically extract test plugins for Home Assistant custom components
103 pytest-embedded 169,795 A pytest plugin that designed for embedded testing.
104 pytest-shard 169,309
105 pytest-filter-subpackage 169,041 pytest plugin for filtering based on sub-packages
106 pytest-embedded-idf 167,515 Make pytest-embedded plugin work with ESP-IDF.
107 pytest-reporter 166,530 Generate pytest reports with templates
108 pytest-embedded-serial-esp 165,910 Make pytest-embedded plugin work with Espressif target boards.
109 pytest-embedded-serial 165,721 Make pytest-embedded plugin work with Serial.
110 pytest-regressions 162,009 Easy to use fixtures to write regression tests.
111 pytest-embedded-qemu 161,782 Make pytest-embedded plugin work with QEMU.
112 pytest-csv 159,794 CSV output for pytest.
113 pytest-operator 157,279 Fixtures for Operators
114 pytest-helpers-namespace 154,401 pytest Helpers Namespace Plugin
115 pytest-picked 153,995 Run the tests related to the changed files
116 pytest-mock-resources 152,451 A pytest plugin for easily instantiating reproducible mock resources.
117 pytest-cpp 151,617 Use pytest’s runner to discover and execute C++ tests
118 pytest-insta 142,712 A practical snapshot testing plugin for pytest
119 pytest-shutil 140,360 A goodie-bag of unix shell and environment tools for py.test
120 pytest-markdown-docs 137,779 Run markdown code fences through pytest
121 pytest-slack 136,033 pytest to Slack reporting plugin
122 pytest-trio 135,599 pytest plugin for trio
123 pytest-grpc 132,309 pytest plugin for grpc
124 pytest-fixture-config 131,697 Fixture configuration utils for py.test
125 pytest-redis 131,075 Redis fixtures and fixture factories for pytest.
126 pytest-black 129,886 A pytest plugin to enable format checking with black
127 pytest-isort 127,852 py.test plugin to check import ordering using isort
128 pytest-line-profiler 127,633 Profile code executed by pytest
129 pytest-logger 127,195 Plugin configuring handlers for loggers from Python logging module.
130 pytest-depends 126,520 Tests that depend on other tests
131 pytest-reporter-html1 126,052 A basic HTML report template for pytest
132 pytest-testrail 126,018 pytest plugin for creating TestRail runs and adding results
133 pytest-harvest 121,808 Store data created during your pytest tests execution, and retrieve it at the end of the session, e.g. for applicative benchmarking purposes.
134 pytest-emoji 119,824 A pytest plugin that adds emojis to your test result report
135 pytest-cache 119,743 pytest plugin with mechanisms for caching across test runs
136 pytest-embedded-jtag 119,536 Make pytest-embedded plugin work with JTAG.
137 pytest-jupyter 117,119 A pytest plugin for testing Jupyter libraries and extensions.
138 pytest-race 116,806 Race conditions tester for pytest
139 pytest-arraydiff 116,762 pytest plugin to help with comparing array output from tests
140 pytest-json 115,745 Generate JSON test reports
141 pytest-jira-xray 113,033 pytest plugin to integrate tests with JIRA XRAY
142 pytest-tornasync 110,076 py.test plugin for testing Python 3.5+ Tornado code
143 pytest-ruff 106,257 pytest plugin to check ruff requirements.
144 pytest-astropy 104,857 Meta-package containing dependencies for testing
145 pytest-mysql 102,836 MySQL process and client fixtures for pytest
146 pytest-astropy-header 102,667 pytest plugin to add diagnostic information to the header of the test output
147 pytest-func-cov 97,228 pytest plugin for measuring function coverage
148 pytest-integration 92,145 Organizing pytests by integration or not
149 pytest-pytestrail 89,389 pytest plugin for interaction with TestRail
150 pytest-durations 85,102 pytest plugin reporting fixtures and test functions execution time.
151 pytest-xvfb 84,024 A pytest plugin to run Xvfb (or Xephyr/Xvnc) for tests.
152 pytest-mypy-plugins 80,246 pytest plugin for writing tests for mypy plugins
153 pytest-ignore-test-results 76,438 A pytest plugin to ignore test results.
154 pytest-tinybird 76,180 A pytest plugin to report test results to tinybird
155 pytest-html-reporter 74,933 Generates a static html report based on pytest framework
156 pytest-only 74,861 Use @pytest.mark.only to run a single test
157 pytest-fail-slow 73,826 Fail tests that take too long to run
158 pytest-rabbitmq 73,346 RabbitMQ process and client fixtures for pytest
159 pytest-rng 73,097 Fixtures for seeding tests and making randomness reproducible
160 pytest-console-scripts 72,199 pytest plugin for testing console scripts
161 qase-pytest 72,185 Qase pytest Plugin for Qase TestOps and Qase Report
162 pytest-eventlet 70,783 Applies eventlet monkey-patch as a pytest plugin.
163 pytest-responses 69,990 py.test integration for responses
164 pytest-xprocess 69,713 A pytest plugin for managing processes across test runs.
165 pytest-html-merger 69,599 pytest HTML reports merging utility
166 pytest-reraise 66,796 Make multi-threaded pytest test cases fail when they should
167 pytest-examples 64,980 pytest plugin for testing examples in docstrings and markdown files.
168 pytest-mpi 64,393 pytest plugin to collect information from tests
169 pytest-cmake 62,809 Provide CMake module for pytest
170 pytest-runtime-xfail 60,637 Call runtime_xfail() to mark running test as xfail.
171 pytest-spec 60,586 Library pytest-spec is a pytest plugin to display test execution output like a SPECIFICATION.
172 pytest-circleci-parallelized 60,182 Parallelize pytest across CircleCI workers.
173 pytest-loguru 58,628 pytest Loguru
174 pytest-split-tests 57,427 A pytest plugin for running a subset of your tests by splitting them in to equally sized groups. Forked from Mark Adams’ original project pytest-test-groups.
175 pytest-tap 55,881 Test Anything Protocol (TAP) reporting plugin for pytest
176 pytest-faker 54,059 Faker integration with the pytest framework.
177 pytest-aio 53,153 pytest plugin for testing async python code
178 pytest-mockito 52,709 Base fixtures for mockito
179 pytest-twisted 51,472 A twisted plugin for pytest.
180 pytest-sphinx 51,410 Doctest plugin for pytest with support for Sphinx-specific doctest-directives
181 pytest-datafiles 51,315 py.test plugin to create a ’tmp_path’ containing predefined files/directories.
182 pytest-djangoapp 50,549 Nice pytest plugin to help you with Django pluggable application testing.
183 allure-pytest-bdd 50,549 Allure pytest-bdd integration
184 pytest-regex 49,706 Select pytest tests with regular expressions
185 pytest-splunk-addon 48,673 A Dynamic test tool for Splunk Apps and Add-ons
186 pytest-error-for-skips 48,518 pytest plugin to treat skipped tests a test failure
187 pytest-monitor 48,302 pytest plugin for analyzing resource usage.
188 allure-pytest-default-results 48,211 Generate default “unknown” results to show in Allure Report if test case does not run
189 pytest-pep8 47,447 pytest plugin to check PEP8 requirements
190 pytest-schema 46,786 👍 Validate return values against a schema-like object in testing
191 pytest-odoo 46,617 py.test plugin to run Odoo tests
192 pytest-skip-slow 46,483 A pytest plugin to skip @pytest.mark.slow tests by default.
193 pytest-logbook 45,215 py.test plugin to capture logbook log messages
194 pytest-mongodb 44,761 pytest plugin for MongoDB fixtures
195 pytest-codecov 44,158 pytest plugin for uploading pytest-cov results to codecov.io
196 pytest-sentry 43,785 A pytest plugin to send testrun information to Sentry.io
197 pytest-antilru 43,570 Bust functools.lru_cache when running pytest to avoid test pollution
198 pytest-logging 42,939 Configures logging and allows tweaking the log level with a py.test flag
199 pytest-faulthandler 42,596 py.test plugin that activates the fault handler module for tests (dummy package)
200 types-pytest-lazy-fixture 42,565 Typing stubs for pytest-lazy-fixture

Current process is based on hugovk’s Top PyPI Packages. Package data is filtered for “pytest”.
There’s also a filter for deprecated and unmaintained plugins.
See source code, although it’s not quite up to date, as my process is in flux.


Learn pytest fast!