pytest-odoo
py.test plugin to run Odoo tests
Decision gist · record as of 2026-08-14
Yes, if you develop Odoo addons and want faster test iteration during development. Install it as a dev dependency alongside pytest. Be aware of the AGPLv3 license if your project has commercial distribution requirements, and remember that pytest-odoo is a development accelerator, not a replacement for Odoo's native test runner in CI—use both for complete coverage.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires a running Odoo instance and database; system dependencies (libxml2-dev, libxslt1-dev, libpq-dev, etc.) needed for integration testing on Debian/Ubuntu.
- Low friction install with a single runtime dependency (pytest).
- The package is actively maintained with a recent release 43 days ago and has been stable since its 2016 initial release.
License · maintenance · safety
AGPLv3 (agpl) — Licensed under AGPLv3, which requires that any derivative works or distributions must also be open-source under the same license. This is a strong copyleft requirement suitable for internal tools and open-source projects but may restrict commercial closed-source use.
last release 2026-07-02 (43 days) · last repo commit 2026-07-02 · 87 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 90,829 downloads/mo, #13,561 on PyPI
Alternatives
Verify before relying
pip install pytest-odoo
pytest -s --odoo-database=test --odoo-log-level=debug_sql- Compatibility with specific Odoo versions (ERP framework versions supported by pytest-odoo 2.2.0)
- Performance characteristics when running large test suites compared to Odoo's native --test-enable
- Whether pytest-xdist distributed testing works reliably with all Odoo addon patterns
What it is and what it does
pytest-odoo bridges Odoo's unittest-based addon tests with pytest, letting developers run tests via pytest's CLI and ecosystem instead of Odoo's slower upgrade-based test runner. It's designed as a development-time tool for faster TDD iteration: you upgrade your addon once, then run tests repeatedly without re-upgrading. The plugin supports pytest-xdist for parallel test execution (creating isolated database copies per worker) and pytest-subtests for granular failure reporting.
The package requires Python 3.8 or later and depends only on pytest. It accepts Odoo configuration via command-line flags (--odoo-database, --odoo-log-level, --odoo-config, --odoo-http, --odoo-skip-at-install) or environment variables (HOST, PORT, USER, PASSWORD, ODOO_RC). The documentation notes that pytest-odoo treats all tests as post-install by default and should complement, not replace, Odoo's native --test-enable in CI pipelines.
Use it for
- Rapid test-driven development of Odoo addons without waiting for full module upgrades on each test run
- Running Odoo addon tests in parallel across multiple workers using pytest-xdist for faster feedback
- Integrating Odoo addon tests into a pytest-based CI/CD pipeline alongside other Python tests
- Debugging individual addon tests with pytest's verbose output and filtering capabilities
- Skipping at-install tests during development to focus on post-install test scenarios
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you develop Odoo addons and want faster test iteration during development.
Install it as a dev dependency alongside pytest. Be aware of the AGPLv3 license if your project has commercial distribution requirements, and remember that pytest-odoo is a development accelerator, not a replacement for Odoo's native test runner in CI—use both for complete coverage.
Install
pytest-odoo on PyPI
Before you install
Low friction install with a single runtime dependency (pytest). The package is actively maintained with a recent release 43 days ago and has been stable since its 2016 initial release.
Requires a running Odoo instance and database; system dependencies (libxml2-dev, libxslt1-dev, libpq-dev, etc.) needed for integration testing on Debian/Ubuntu.
License in practice
Licensed under AGPLv3, which requires that any derivative works or distributions must also be open-source under the same license. This is a strong copyleft requirement suitable for internal tools and open-source projects but may restrict commercial closed-source use.
Quickstart
pip install pytest-odoo
pytest -s --odoo-database=test --odoo-log-level=debug_sql
Verify before relying
- Compatibility with specific Odoo versions (ERP framework versions supported by pytest-odoo 2.2.0)
- Performance characteristics when running large test suites compared to Odoo's native --test-enable
- Whether pytest-xdist distributed testing works reliably with all Odoo addon patterns
Package facts
| License | AGPLv3 agpl |
| Python support | Supports the current Python release >=3.8 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 1 packagepytest |
| Maintenance | Actively maintained 43 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 90,829 / month, #13,561 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 5 - Production/StableIntended Audience :: DevelopersLicense :: OSI Approved :: GNU Affero General Public License v3Operating System :: POSIXProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9Topic :: Software Development :: LibrariesTopic :: Software Development :: TestingTopic :: Utilities |
Evidence: pytest_odoo-2.2.0-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 plugin for odoo”
- pytest-odoopytest-odoo is a pytest plugin that runs Odoo addon tests using…
- pylint-odooA Pylint plugin that adds Odoo-specific code quality checks to…
- setuptools-odooSetuptools-odoo automates packaging of Odoo addons by extracting…
Give your agent the search over MCP, or paste the wish link into any chat.
More Libraries packages
urllib3 is an HTTP client library that provides thread-safe connection pooling, SSL/TLS verification, multipart file uploads, request retries, compression support, and proxy handling for Python applications.
Requests is a Python HTTP library that simplifies sending HTTP/1.1 requests with automatic handling of headers, authentication, cookies, and response parsing.
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.
Provides parsing, arithmetic, and recurrence rule computation for dates and times, with timezone support and iCalendar RFC compliance.
Install it if you need to parse flexible date strings, compute relative dates, handle timezones, or work with recurrence rules—it's the de facto choice for these tasks.
Six provides utility functions to write Python code that runs on both Python 2.7 and Python 3.3+, smoothing over language differences between the two versions.
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.
See also odoo-test-helper · manifestoo-core · pytest-parallel · setuptools-odoo · pylint-odoo · pytest-cpp · tdd-guard-pytest · pytest-incremental · pytest-subtests · pytest-django