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-04-01 06:34:58

# Package Downloads Summary
1 pytest-cov 57,088,212 pytest plugin for measuring coverage. (Test & Code episode pytest-cov : The pytest plugin for measuring coverage)
2 pytest-xdist 36,072,788 pytest xdist plugin for distributed testing, most importantly across multiple CPUs
3 pytest-asyncio 30,432,765 pytest support for asyncio
4 pytest-mock 29,687,621 Thin-wrapper around the mock package for easier use with pytest (Test & Code episode pytest-mock : Mocking in pytest)
5 hypothesis 15,523,442 A library for property-based testing (Includes a small pytest plugin.)
6 pytest-rerunfailures 14,285,618 pytest plugin to re-run tests to eliminate flaky failures
7 pytest-metadata 13,981,427 pytest plugin for test session metadata
8 pytest-timeout 11,878,882 pytest plugin to abort hanging tests
9 pytest-html 9,929,861 pytest plugin for generating HTML reports (Test & Code episode pytest-html - a plugin that generates HTML reports for test results)
10 pytest-random-order 6,697,230 Randomise the order in which pytest tests are run with some control over the randomness
11 pytest-env 5,742,151 pytest plugin that allows you to add environment variables.
12 pytest-localserver 5,650,986 pytest plugin to test server connections locally.
13 pytest-django 5,101,073 A Django plugin for pytest.
14 pytest-split 4,740,749 pytest plugin which splits the test suite to equally sized sub suites based on test execution time.
15 pytest-randomly 4,178,295 pytest plugin to randomly order tests and control random.seed.
16 pytest-json-report 3,693,968 A pytest plugin to report test results as JSON files
17 pytest-repeat 3,083,924 pytest plugin for repeating tests (Test & Code April Fools episode Python 3.14 won’t repeat with pytest-repeat)
18 pytest-custom-exit-code 2,654,753 Exit pytest test session with custom exit code in different scenarios
19 pytest-benchmark 2,598,524 A pytest fixture for benchmarking code. It will group the tests into rounds that are calibrated to the chosen timer.
20 allure-pytest 2,511,990 Allure pytest integration
21 pytest-ordering 2,344,709 pytest plugin to run your tests in a specific order
22 pytest-order 2,314,036 pytest plugin to run your tests in a specific order
23 pytest-sugar 2,307,583 pytest-sugar is a plugin for pytest that changes the default look and feel of pytest (e.g. progressbar, show tests that fail instantly).
24 syrupy 2,298,458 pytest Snapshot Test Utility
25 pytest-socket 2,240,326 pytest Plugin to disable socket calls during tests
26 pytest-base-url 2,226,946 pytest plugin for URL based testing
27 pytest-subtests 2,121,748 unittest subTest() support and subtests fixture
28 pytest-icdiff 2,075,778 use icdiff for better error messages in pytest assertions
29 pytest-playwright 1,811,980 A pytest wrapper with fixtures for Playwright to automate web browsers
30 pytest-instafail 1,681,346 pytest plugin to show failures instantly
31 pytest-unordered 1,612,234 Test equality of unordered collections in pytest
32 pytest-dotenv 1,608,157 A py.test plugin that parses environment files before running tests
33 pytest-check 1,458,024 A pytest plugin that allows multiple failures per test.
34 pytest-httpx 1,374,645 Send responses to httpx.
35 pytest-assume 1,369,356 A pytest plugin that allows multiple failures per test
36 pytest-httpserver 1,343,093 pytest-httpserver is a httpserver for pytest
37 pytest-bdd 1,274,910 BDD for pytest
38 pytest-postgresql 1,213,049 Postgresql fixtures and fixture factories for pytest.
39 pytest-profiling 1,173,379 Profiling plugin for py.test
40 pytest-aiohttp 1,123,805 pytest plugin for aiohttp support
41 pytest-dependency 1,023,427 Manage dependencies of tests
42 pytest-freezegun 967,945 Wrap tests with fixtures in freeze_time
43 pytest-github-actions-annotate-failures 823,975 pytest plugin to annotate failed tests with a workflow command for GitHub Actions
44 pytest-memray 789,739 A simple plugin to use with pytest
45 pytest-factoryboy 783,571 Factory Boy support for pytest.
46 pytest-lazy-fixture 774,609 It helps to use fixtures in pytest.mark.parametrize
47 pytest-retry 766,824 Adds the ability to retry flaky tests in CI environments
48 pytest-recording 748,177 A pytest plugin that allows you recording of network interactions via VCR.py
49 pytest-watch 721,076 Local continuous test runner with pytest and watchdog.
50 pytest-vcr 711,149 Plugin for managing VCR.py cassettes
51 pytest-azurepipelines 705,331 Formatting PyTest output for Azure Pipelines UI
52 pytest-snapshot 699,772 A plugin for snapshot testing with pytest.
53 pytest-celery 662,864 pytest plugin for Celery
54 pytest-reportlog 620,727 Replacement for the –resultlog option, focused in simplicity and extensibility
55 pytest-docker 575,286 Simple pytest fixtures for Docker and Docker Compose based tests
56 pytest-ansible 544,692 Plugin for pytest to simplify calling ansible modules from tests or fixtures
57 pytest-deadfixtures 517,423 A simple plugin to list unused fixtures in pytest
58 pytest-nunit 509,731 A pytest plugin for generating NUnit3 test result XML output
59 pytest-testinfra 495,959 Test infrastructures
60 pytest-docker-tools 475,187 Docker integration tests for pytest
61 pytest-archon 469,106 Rule your architecture like a real developer
62 pytest-cases 468,060 Separate test code from test cases in pytest.
63 pytest-find-dependencies 464,122 A pytest plugin to find dependencies between tests
64 pytest-clarity 456,045 A plugin providing an alternative, colourful diff output for failing assertions.
65 pytest-freezer 448,242 pytest plugin providing a fixture interface for spulec/freezegun
66 pytest-wake 445,791
67 pytest-flask 439,843 A set of py.test fixtures to test Flask applications.
68 pytest-opentelemetry 433,085 A pytest plugin for instrumenting test runs via OpenTelemetry
69 pytest-datadir 429,222 pytest plugin for test data directories and files
70 pytest-testmon 426,167 selects tests affected by changed files and methods
71 pytest-timeouts 399,169 Linux-only pytest plugin to control durations of various test case execution phases
72 pytest-flakefinder 385,897 Runs tests multiple times to expose flakiness.
73 pytest-mypy 360,656 A pytest Plugin for Mypy
74 pytest-pudb 349,788 pytest PuDB debugger integration
75 pytest-alembic 337,957 A pytest plugin for verifying alembic migrations.
76 pytest-reportportal 334,470 Agent for Reporting results of tests to the Report Portal
77 pytest-explicit 303,959 A pytest plugin to ignore certain marked tests by default
78 pytest-flake8 303,718 pytest plugin to check FLAKE8 requirements
79 flake8-pytest-style 285,129 A flake8 plugin checking common style issues or inconsistencies with pytest-based tests.
80 pytest-codspeed 278,370 pytest plugin to create CodSpeed benchmarks
81 pytest-test-groups 256,566 A pytest plugin for running a subset of your tests by splitting them in to equally sized groups.
82 pytest-watcher 254,909 Automatically rerun your tests on file modifications
83 pytest-variables 254,244 pytest plugin for providing variables to tests/fixtures
84 pytest-pylint 244,498 pytest plugin to check source code with pylint
85 pytest-qt 240,406 pytest support for PyQt and PySide applications
86 pytest-parametrized 234,965 pytest decorator for parametrizing tests with default iterables.
87 pytest-doctestplus 231,172 pytest plugin with advanced doctest features.
88 pytest-spark 228,670 pytest plugin to run the tests with support of pyspark.
89 pytest-selenium 227,698 pytest plugin for Selenium
90 pylint-pytest 227,661 A Pylint plugin to suppress pytest-related false positives.
91 pytest-structlog 225,443 Structured logging assertions
92 pytest-pretty 221,690 pytest plugin for printing summary data as I want it
93 pytest-subprocess 219,746 A plugin to fake subprocess for pytest
94 pytest-describe 219,352 Describe-style plugin for pytest
95 pytest-race 219,051 Race conditions tester for pytest
96 pytest-shard 218,128
97 pytest-incremental 203,549 an incremental test runner (pytest plugin)
98 pytest-lazy-fixtures 201,227 Allows you to use fixtures in @pytest.mark.parametrize.
99 pytest-timestamper 201,034 pytest plugin to add a timestamp prefix to the pytest output
100 pytest-cpp 191,365 Use pytest’s runner to discover and execute C++ tests
101 pytest-homeassistant-custom-component 189,193 Experimental package to automatically extract test plugins for Home Assistant custom components
102 pytest-sftpserver 177,408 py.test plugin to locally test sftp server connections.
103 pytest-parametrization 176,441 Simpler PyTest parametrization
104 pytest-md-report 172,665 A pytest plugin to generate test outcomes reports with markdown table format. (Test & Code episode pytest-md and pytest-md-report: Markdown reports for pytest)
105 pytest-helpers-namespace 169,739 pytest Helpers Namespace Plugin
106 pytest-mpl 162,662 pytest plugin to help with testing figures output from Matplotlib
107 pytest-harvest 156,406 Store data created during your pytest tests execution, and retrieve it at the end of the session, e.g. for applicative benchmarking purposes.
108 pytest-mock-resources 156,388 A pytest plugin for easily instantiating reproducible mock resources.
109 pytest-csv 155,986 CSV output for pytest.
110 pytest-redis 155,807 Redis fixtures and fixture factories for pytest.
111 pytest-reporter 154,807 Generate pytest reports with templates
112 pytest-remotedata 151,551 pytest plugin for controlling remote data access.
113 pytest-insta 145,796 A practical snapshot testing plugin for pytest
114 pytest-grpc 141,066 pytest plugin for grpc
115 pytest-shutil 140,132 A goodie-bag of unix shell and environment tools for py.test
116 pytest-trio 137,479 pytest plugin for trio
117 pytest-regressions 136,622 Easy to use fixtures to write regression tests.
118 pytest-md 136,465 Plugin for generating Markdown reports for pytest results (Test & Code episode pytest-md and pytest-md-report: Markdown reports for pytest)
119 pytest-filter-subpackage 135,952 pytest plugin for filtering based on sub-packages
120 pytest-operator 133,429 Fixtures for Operators
121 pytest-slack 130,972 pytest to Slack reporting plugin
122 pytest-cache 130,123 pytest plugin with mechanisms for caching across test runs
123 pytest-markdown-docs 128,165 Run markdown code fences through pytest
124 pytest-fixture-config 127,723 Fixture configuration utils for py.test
125 pytest-ruff 126,577 pytest plugin to check ruff requirements.
126 pytest-examples 126,191 pytest plugin for testing examples in docstrings and markdown files.
127 pytest-black 125,557 A pytest plugin to enable format checking with black
128 pytest-logger 124,614 Plugin configuring handlers for loggers from Python logging module.
129 pytest-picked 124,025 Run the tests related to the changed files
130 pytest-tap 119,371 Test Anything Protocol (TAP) reporting plugin for pytest
131 pytest-emoji 119,145 A pytest plugin that adds emojis to your test result report
132 pytest-jira-xray 116,526 pytest plugin to integrate tests with JIRA XRAY
133 pytest-depends 116,174 Tests that depend on other tests
134 pytest-reporter-html1 115,948 A basic HTML report template for pytest
135 pytest-rng 115,573 Fixtures for seeding tests and making randomness reproducible
136 pytest-isort 110,062 py.test plugin to check import ordering using isort
137 pytest-tornasync 107,565 py.test plugin for testing Python 3.5+ Tornado code
138 pytest-testrail 107,118 pytest plugin for creating TestRail runs and adding results
139 pytest-mysql 103,418 MySQL process and client fixtures for pytest
140 pytest-line-profiler 102,913 Profile code executed by pytest
141 qase-pytest 102,211 Qase pytest Plugin for Qase TestOps and Qase Report
142 pytest-json 101,464 Generate JSON test reports
143 pytest-integration 99,043 Organizing pytests by integration or not
144 pytest-pytestrail 95,542 pytest plugin for interaction with TestRail
145 pytest-xvfb 92,376 A pytest plugin to run Xvfb (or Xephyr/Xvnc) for tests.
146 pytest-arraydiff 92,250 pytest plugin to help with comparing array output from tests
147 pytest-mypy-plugins 92,211 pytest plugin for writing tests for mypy plugins
148 pytest-func-cov 91,749 pytest plugin for measuring function coverage
149 pytest-console-scripts 88,739 pytest plugin for testing console scripts
150 pytest-tinybird 84,129 A pytest plugin to report test results to tinybird
151 pytest-html-reporter 77,869 Generates a static html report based on pytest framework
152 pytest-only 77,517 Use @pytest.mark.only to run a single test
153 pytest-astropy-header 77,477 pytest plugin to add diagnostic information to the header of the test output
154 pytest-astropy 77,413 Meta-package containing dependencies for testing
155 pytest-mpi 75,828 pytest plugin to collect information from tests
156 pytest-fail-slow 75,617 Fail tests that take too long to run
157 pytest-xprocess 75,072 A pytest plugin for managing processes across test runs.
158 pytest-eventlet 74,241 Applies eventlet monkey-patch as a pytest plugin.
159 pytest-cmake 73,937 Provide CMake module for pytest
160 pytest-rabbitmq 70,431 RabbitMQ process and client fixtures for pytest
161 pytest-regex 70,278 Select pytest tests with regular expressions
162 pytest-reraise 69,519 Make multi-threaded pytest test cases fail when they should
163 pytest-jupyter 68,849 A pytest plugin for testing Jupyter libraries and extensions.
164 pytest-responses 68,174 py.test integration for responses
165 pytest-durations 66,757 pytest plugin reporting fixtures and test functions execution time.
166 pytest-embedded 66,201 A pytest plugin that designed for embedded testing.
167 pytest-embedded-idf 63,589 Make pytest-embedded plugin work with ESP-IDF.
168 pytest-embedded-serial-esp 62,845 Make pytest-embedded plugin work with Espressif target boards.
169 pytest-html-merger 62,596 pytest HTML reports merging utility
170 pytest-embedded-serial 62,544 Make pytest-embedded plugin work with Serial.
171 pytest-spec 59,500 Library pytest-spec is a pytest plugin to display test execution output like a SPECIFICATION.
172 pytest-runtime-xfail 58,708 Call runtime_xfail() to mark running test as xfail.
173 pytest-split-tests 58,167 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.
174 pytest-embedded-qemu 56,685 Make pytest-embedded plugin work with QEMU.
175 pytest-circleci-parallelized 56,463 Parallelize pytest across CircleCI workers.
176 pytest-twisted 55,803 A twisted plugin for pytest.
177 pytest-codecov 55,670 pytest plugin for uploading pytest-cov results to codecov.io
178 allure-pytest-bdd 55,012 Allure pytest-bdd integration
179 pytest-faker 54,768 Faker integration with the pytest framework.
180 pytest-loguru 54,723 pytest Loguru
181 allure-pytest-default-results 54,256 Generate default “unknown” results to show in Allure Report if test case does not run
182 pytest-asyncio-cooperative 53,636 Run all your asynchronous tests cooperatively.
183 nrt-pytest-soft-asserts 52,561 Soft asserts for pytest
184 pytest-error-for-skips 52,406 pytest plugin to treat skipped tests a test failure
185 pytest-mockito 51,544 Base fixtures for mockito
186 pytest-datafiles 50,670 py.test plugin to create a ’tmp_path’ containing predefined files/directories.
187 pytest-schema 49,101 👍 Validate return values against a schema-like object in testing
188 pytest-monitor 49,089 pytest plugin for analyzing resource usage.
189 pytest-sphinx 48,256 Doctest plugin for pytest with support for Sphinx-specific doctest-directives
190 pytest-aio 47,987 pytest plugin for testing async python code
191 pytest-pep8 46,941 pytest plugin to check PEP8 requirements
192 pytest-odoo 46,805 py.test plugin to run Odoo tests
193 pytestreport 46,603 The HTML Report for Python unit testing Base on HTMLTestRunner
194 pytest-codeblocks 45,163 Test code blocks in your READMEs
195 pytest-splunk-addon 44,610 A Dynamic test tool for Splunk Apps and Add-ons
196 pytest-loop 44,100 pytest plugin for looping tests
197 pytest-skip-slow 43,990 A pytest plugin to skip @pytest.mark.slow tests by default.
198 pytest-mongodb 43,723 pytest plugin for MongoDB fixtures
199 pytest-fastapi-deps 43,361 A fixture which allows easy replacement of fastapi dependencies for testing
200 pytest-portion 42,701 Select a portion of the collected tests
201 pytest-testconfig 42,560 Test configuration plugin for pytest.

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!