pytest-asyncio-concurrent
Pytest plugin to execute python async tests concurrently.
Decision gist · record as of 2026-08-14
Yes, if your test suite contains many async I/O-bound tests and you have verified that concurrent execution does not violate your fixture assumptions. The plugin is actively maintained, has no known vulnerabilities, and low install friction. Start with explicit grouping to control which tests run together, then validate that shared fixtures behave correctly under concurrent execution before relying on default grouping.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires Python 3.8 or later; concurrent execution breaks test isolation for non-function-scoped fixtures, so tests must be verified safe to run concurrently.
- Low friction: pure Python wheel with only pytest as a runtime dependency.
- Active maintenance with recent commits; marked Beta but in use since late 2024.
License · maintenance · safety
permissive license (permissive) — MIT license permits free use, modification, and distribution with minimal restrictions—suitable for both open-source and commercial projects.
last release 2026-04-09 (127 days) · last repo commit 2026-04-09 · 19 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 92,037 downloads/mo, #13,486 on PyPI
Alternatives
Verify before relying
pip install pytest-asyncio-concurrent
@pytest.mark.asyncio_concurrent(group="my_group")
async def test_example():
res = await wait_for_something_async()
assert result.is_valid()- Whether concurrent execution within a group truly eliminates fixture isolation concerns or merely defers them to group boundaries.
- Performance gains on typical test suites and whether the overhead of group batching justifies concurrent execution for smaller test sets.
- Compatibility edge cases with pytest plugins that also hook pytest_runtestloop.
What it is and what it does
pytest-asyncio-concurrent is a pytest plugin that runs async test functions concurrently in groups rather than sequentially, designed to speed up I/O or network-bound test suites. It extends pytest's test loop to batch setup, call, and teardown phases for all tests in a group, then executes them concurrently within that group using asyncio. Tests are grouped by their parent scope (e.g., all methods in a class, all functions in a file), and you can explicitly assign tests to named groups via the `asyncio_concurrent` mark or rely on a default grouping strategy.
The plugin accepts a `timeout` parameter on the mark to fail tests that exceed a time limit, and supports configuration via CLI flags or pytest config files. It works alongside pytest and is compatible with parametrized tests. The trade-off is that concurrent execution breaks the test isolation principle for non-function-scoped fixtures, so you must verify your tests are safe to run concurrently before using it.
Use it for
- Speed up integration test suites with many async I/O or network calls by running independent tests concurrently within the same class or module.
- Reduce total test runtime for parametrized async tests by executing all parameter variants of a test concurrently when grouped.
- Add per-test timeouts to catch hung async operations without blocking the entire test suite.
- Run async tests concurrently while maintaining isolation at the group level, suitable for microservice or API test scenarios.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if your test suite contains many async I/O-bound tests and you have verified that concurrent execution does not violate your fixture assumptions.
The plugin is actively maintained, has no known vulnerabilities, and low install friction. Start with explicit grouping to control which tests run together, then validate that shared fixtures behave correctly under concurrent execution before relying on default grouping.
Install
pytest-asyncio-concurrent on PyPI
Before you install
Low friction: pure Python wheel with only pytest as a runtime dependency. Active maintenance with recent commits; marked Beta but in use since late 2024.
Requires Python 3.8 or later; concurrent execution breaks test isolation for non-function-scoped fixtures, so tests must be verified safe to run concurrently.
License in practice
MIT license permits free use, modification, and distribution with minimal restrictions—suitable for both open-source and commercial projects.
Quickstart
pip install pytest-asyncio-concurrent
@pytest.mark.asyncio_concurrent(group="my_group")
async def test_example():
res = await wait_for_something_async()
assert result.is_valid()
Verify before relying
- Whether concurrent execution within a group truly eliminates fixture isolation concerns or merely defers them to group boundaries.
- Performance gains on typical test suites and whether the overhead of group batching justifies concurrent execution for smaller test sets.
- Compatibility edge cases with pytest plugins that also hook pytest_runtestloop.
Package facts
| License | permissive license permissive |
| Python support | Supports the current Python release >=3.8 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 1 packagepytest |
| Maintenance | Actively maintained 127 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 92,037 / month, #13,486 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 4 - BetaFramework :: PytestIntended Audience :: DevelopersLicense :: OSI Approved :: MIT LicenseOperating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 3 :: OnlyProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9Topic :: Software Development :: Testing |
Evidence: pytest_asyncio_concurrent-0.5.2-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “pytest async concurrent execution”
- pytest-asyncio-concurrentA pytest plugin that executes async test functions concurrently…
- pytest-trioA pytest plugin that enables testing of async code written with Trio,…
- pytest-parallelA pytest plugin that runs tests in parallel using multiprocessing and…
Give your agent the search over MCP, or paste the wish link into any chat.
More Testing packages
Pluggy provides a plugin system that lets you define hook specifications and register implementations to be called in sequence, enabling extensible Python applications without tight coupling.
Install it if you're building an extensible application or framework.
pytest is a testing framework that lets you write test functions using plain assert statements and automatically discovers and runs them, with detailed failure reporting.
virtualenv creates isolated Python environments where packages can be installed independently without affecting the system Python or other projects.
Coverage.py measures which lines of Python code are executed during test runs, reporting coverage percentages and identifying untested code paths.
Install it if you want to measure test completeness or enforce coverage thresholds in your project.
A pytest plugin that generates test reports in Common Test Report Format (CTRF) as JSON, compatible with pytest-xdist and pytest-playwright for distributed and browser-based testing.
Install it if you need CTRF-formatted test output for CI/CD integration or cross-tool reporting.
Runs unittest test suites concurrently across multiple worker processes, distributing tests via round-robin or class-local partitioning to speed up test execution.
See also pytest-asyncio · pytest-parallel · rtest · pytest-race · aiometer · pytest-aiohttp · pytest-twisted · promise · pytest-markdown-docs