SPB Git
4.2 KB · 49 lines json
1{2  "slug": "pytest",3  "name": "pytest",4  "aliases": ["py.test"],5  "vendor": { "name": "pytest-dev team", "slug": "pytest-dev", "website": "https://docs.pytest.org" },6  "homepage_url": "https://docs.pytest.org/en/stable/",7  "docs_url": "https://docs.pytest.org/en/stable/",8  "repo_url": "https://github.com/pytest-dev/pytest",9  "license_url": "https://github.com/pytest-dev/pytest/blob/main/LICENSE",10  "product_type": "framework",11  "product_status": "active",12  "summary": "Python testing framework with plain assert statements, fixtures, parametrization and a large plugin ecosystem, the de facto standard for Python test suites",13  "description": "pytest is a testing framework for Python maintained by the pytest-dev team under the MIT license. Tests are ordinary functions that use the built-in `assert` statement; pytest rewrites assertions to produce detailed failure messages without a special assertion API. Fixtures provide dependency injection for setup and teardown with configurable scope, and parametrization generates test cases from data tables.\n\nThe plugin architecture is its ecosystem: pytest-cov adds coverage, pytest-xdist distributes tests across CPU cores or machines, pytest-asyncio supports coroutines, Hypothesis integrates property-based testing, and Playwright ships an official pytest plugin for browser tests. pytest also runs unittest and nose-style suites, so adoption in legacy codebases is incremental. It is the default runner in most scientific Python projects and in tooling such as uv-managed packages. Limitations are mostly conceptual: fixture resolution through function arguments can be opaque in large suites, and plugin interactions sometimes complicate configuration in `pyproject.toml` or `pytest.ini`.",14  "capabilities": ["Plain assert statements with detailed introspection", "Fixtures with scopes and dependency injection", "Parametrized tests", "Plugin system (coverage, parallel execution, async, browsers)", "Compatibility with unittest suites", "Marker-based selection and configurable collection"],15  "workflows": ["Run a package's test suite in CI with coverage", "Parallelize slow tests across cores with pytest-xdist", "Drive browser tests through the Playwright plugin"],16  "advantages": ["Minimal boilerplate", "Very large plugin ecosystem", "MIT license"],17  "limitations": ["Fixture magic can be hard to trace in large suites", "Plugin interactions complicate configuration"],18  "prerequisites": ["Python; install with uv or pip"],19  "audiences": ["Python developers", "Data scientists testing pipelines", "Package maintainers"],20  "alternatives": [],21  "comparison_notes": "The standard library's unittest module is the built-in alternative with a class-based, xUnit-style API; pytest runs those tests as well and is generally preferred for new code because of fixtures and assertion rewriting.",22  "categories": [{ "slug": "testing-qa", "primary": true }],23  "tags": ["testing", "python", "open-source", "cli"],24  "use_cases": [],25  "operating_systems": ["macos", "linux", "windows"],26  "execution_modes": ["local", "cloud"],27  "interfaces": ["cli", "library"],28  "deployment_models": ["desktop"],29  "integrations": ["pytest-cov", "pytest-xdist", "Hypothesis", "Playwright", "GitHub Actions", "PyCharm", "VS Code"],30  "data_formats": ["Python", "JUnit XML", "pyproject.toml"],31  "languages": ["Python"],32  "source_model": "open-source",33  "license_spdx": "MIT",34  "pricing_model": ["open-source", "free"],35  "self_hostable": true,36  "sources": [37    { "url": "https://docs.pytest.org/en/stable/", "type": "official_site", "title": "pytest documentation", "supports": ["name", "summary", "capabilities"], "checked_at": "2026-11-02", "note": "pytest.org redirects to the documentation site" },38    { "url": "https://github.com/pytest-dev/pytest", "type": "repository", "title": "pytest-dev/pytest", "supports": ["repo_url", "source_model"], "checked_at": "2026-11-02" },39    { "url": "https://github.com/pytest-dev/pytest/blob/main/LICENSE", "type": "license_page", "supports": ["license_spdx"], "checked_at": "2026-11-02" }40  ],41  "confidence": "high",42  "discovery_method": "editorial-research",43  "depth": "standard",44  "editorial_status": "reviewed",45  "visibility": "public",46  "featured": false,47  "author": "batch-B1"48}49
Files · laptop-initial-20261102
Menu

Theme