awesome-repositories.com
Blog
awesome-repositories.com

Descoperă cele mai bune repository-uri open source cu căutare AI.

ExploreazăCăutări recomandateAlternative open-sourceSoftware self-hostedBlogHartă site
ProiectDespreCum realizăm clasamentulPresăServer MCP
LegalConfidențialitateTermeni
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
pytest-dev avatar

pytest-dev/pytest

0
View on GitHub↗
13,645 stele·3,024 fork-uri·Python·mit·4 vizualizăripytest.org↗

Pytest

pytest este un cadru de testare pentru Python care oferă un runner în linia de comandă pentru descoperirea și executarea suitelor de testare. Este construit pe o arhitectură modulară care utilizează aserțiuni standard de limbaj pentru a verifica corectitudinea codului, inspectând automat expresiile pentru a oferi rapoarte detaliate de eșec fără a necesita metode de aserțiune specializate.

Cadrul se distinge printr-un sistem de injecție de dependențe care gestionează logica de setup și teardown prin rezolvarea și injectarea automată a resurselor în funcțiile de testare. De asemenea, dispune de o arhitectură de plugin-uri bazată pe hook-uri care permite personalizarea profundă a ciclului de viață al testului, inclusiv colectarea, execuția și raportarea. Aceste capabilități sunt susținute de parametrizarea dinamică, care generează instanțe multiple de test dintr-o singură definiție, și caching-ul stării persistente care permite re-rularea selectivă a testelor eșuate între sesiuni.

Dincolo de modelul său de execuție de bază, proiectul oferă o suită cuprinzătoare de instrumente pentru gestionarea mediilor de testare, inclusiv capturarea ieșirii, gestionarea jurnalelor și validarea avertismentelor. Acesta suportă scenarii de testare complexe prin funcționalități precum gestionarea fișierelor temporare, patching-ul obiectelor și capacitatea de a executa nativ suite de testare existente din alte cadre. Configurarea este gestionată prin fișiere centralizate, permițând un control fin asupra descoperirii, filtrării și comportamentului de execuție al testelor.

Proiectul este distribuit ca un pachet Python standard și include documentație extinsă despre configurarea sa, sistemul de plugin-uri și interfața în linia de comandă.

Features

  • Test Frameworks - Provides a testing framework for Python that uses standard language assertions and a modular fixture system to verify code correctness.
  • Dependency Injection - Provides a mechanism for managing setup and teardown logic by injecting reusable resources and state into test functions as arguments.
  • Data-Driven Parametrization - Generates multiple test instances from a single function definition by injecting varied input datasets during the collection phase.
  • Test Execution Runners - Provides a command-line tool that automatically discovers and executes test suites based on naming conventions and configuration files.
  • Test Fixture Systems - Provides a powerful dependency injection system that automatically resolves and injects test resources as function arguments.
  • Fixture Definitions - Creates setup and teardown logic that can be injected into test functions via dependency injection or automatic activation.
  • Execution Assertions - Uses standard language assertions to validate code behavior and automatically inspects intermediate values to provide detailed failure reports.
  • CLI Test Runners - Automatically identifies and executes test files and functions based on naming conventions within the project directory structure.
  • Assertion Decomposition - Inspects failing expressions automatically to provide descriptive error messages without requiring specialized assertion methods.
  • Exception Verification - Ensures that specific code blocks raise the correct error types and provides access to exception details for inspection.
  • Plugin Architectures - Provides a modular system that allows third-party extensions to customize test collection, execution, and reporting through hooks.
  • Lifecycle Hooks - Allows plugins to intercept and modify the test lifecycle, including directory collection, option parsing, and reporting.
  • Hook-Based Plugin Systems - Features a hook-based plugin architecture that allows deep customization of the test lifecycle through event-driven registration.
  • Test Configuration - Centralizes project-wide testing settings and environment preferences within a dedicated configuration file.
  • Assertion Rewriting - Provides detailed failure reports by automatically inspecting expressions in standard language assertions.
  • Test Lifecycle and Execution Control - Controls the scope and cleanup of test resources across functions, classes, modules, or entire sessions to ensure reliable execution.
  • Test Case Generators - Implements dynamic test generation logic to determine test parameters or scopes based on runtime conditions or command-line options.
  • Instrumente pentru calitatea codului - Framework for writing and running Python tests.
  • Instrumente pentru dezvoltatori - Scalable testing framework.
  • Python Packages - General testing framework.
  • Python Projects - Listed in the “Python Projects” section of the Awesome For Beginners awesome list.
  • Testing Ecosystems - A mature framework for writing scalable tests in Python.
  • Framework-uri de testare - Scales Python testing from small to complex.
  • Testing Tools - Listed in the “Testing Tools” section of the Awesome Python awesome list.
  • Recursive Discovery Engines - Automatically traverses directory structures to identify and collect test modules based on naming conventions.
  • Framework Extensions - Implements hooks to customize command-line arguments, configuration parsing, and the overall test collection and execution lifecycle.
  • Assertion Rewriters - Modifies source code during import to inject detailed diagnostic information into standard language assertions for improved failure reporting.
  • Conditional Skipping - Prevents execution of specific tests, classes, or modules based on runtime conditions, environment settings, or missing dependencies.
  • Parametrized Fixtures - Configures fixture functions to run multiple times with different parameters, allowing tests to consume varied setup states.
  • Test Suite Filters - Restricts test discovery by excluding specific modules, classes, or functions based on file patterns, markers, or explicit deselection criteria.
  • State Persistence - Saves and retrieves execution metadata and test results on disk to enable selective re-running of failed tests across sessions.
  • Temporary Directory Managers - Automates the creation and cleanup of temporary directories for tests, with configurable retention policies for debugging.
  • Plugin Integrations - Integrates third-party plugins automatically upon installation to add specialized functionality like coverage reporting or distributed execution.
  • Plugin Distributions - Registers plugins through package metadata so they are automatically discovered and loaded by the testing environment.
  • Test State Persistence - Stores execution metadata and test results on disk to enable selective re-running of failed tests across sessions.
  • Warning Verification Utilities - Verifies that specific code blocks trigger expected warnings, matching messages against literal strings or regular expressions.
  • Test Annotations - Attaches custom or built-in attributes to test functions, classes, or modules to organize them for selective execution.
  • Expected Failure Markers - Identifies tests known to fail so they are reported separately from regressions while allowing them to run.
  • Legacy Framework Adapters - Executes existing test suites written for other frameworks natively without requiring code modifications or refactoring.
  • Project Root Definitions - Establishes a stable base directory for test discovery and plugin state storage to ensure consistent identification of test nodes.
  • Test Logging Utilities - Automatically captures log messages during test execution and displays them in the console output when a test fails.
  • Plugin Lifecycle Management - Controls the activation and deactivation of plugins through command-line flags, environment variables, or configuration files.
  • Marker Registrations - Declares metadata tags for tests to ensure they are recognized by the system and appear in documentation.
  • TOML Configuration Support - Supports project configuration using native TOML files for structured and readable settings.
  • Runtime State Modifiers - Overrides attributes, environment variables, or system paths during test execution and automatically restores the original state afterward.
  • Test Patching Utilities - Modifies attributes, dictionary items, or environment variables temporarily during a test and automatically restores them afterward.
  • Local Plugin Implementations - Defines directory-specific hook implementations in configuration files to customize test execution behavior for specific subdirectories.
  • Warning Issuance Systems - Confirms that specific code paths trigger expected warnings to ensure proper handling of deprecated or problematic features.
  • Dependency Warning Filters - Configures global or test-specific rules to ignore, display, or promote specific warnings to errors.
  • Doctest Runners - Runs code examples embedded in documentation files or source code docstrings as part of the automated test suite.
  • Test Isolation - Provides utilities to create temporary directories and execute tests in isolation for plugin development.
  • Subtest Reporters - Supports running multiple assertions within a single test function and reporting each failure independently.
  • Test Grouping Utilities - Groups related test functions into classes to improve structure and enable shared configuration or resource management.
  • Transient Failure Reruns - Re-executes tests that fail during a run to mitigate the impact of transient issues and improve build reliability.

Istoric stele

Graficul istoricului de stele pentru pytest-dev/pytestGraficul istoricului de stele pentru pytest-dev/pytest

Căutare AI

Explorează mai multe repository-uri excelente

Descrie ce ai nevoie în limbaj simplu — AI-ul sortează mii de proiecte open source selectate în funcție de relevanță.

Start searching with AI

Alternative open-source pentru Pytest

Proiecte open-source similare, clasificate după numărul de funcționalități comune cu Pytest.
  • thomhurst/tunitAvatar thomhurst

    thomhurst/TUnit

    3,744Vezi pe GitHub↗

    TUnit is a comprehensive C# testing framework, mocking library, and fluent assertion tool. It utilizes source generation for test discovery and mock creation, ensuring compatibility with Native AOT and IL trimming by eliminating the need for runtime reflection and proxies. The framework provides specialized capabilities for integration testing, including the management of distributed application lifecycles, isolated database schemas, and the correlation of telemetry and logs across process boundaries via OTLP. It also includes an HTTP testing utility to intercept network exchanges and mock AP

    C#csharpdotnettest
    Vezi pe GitHub↗3,744
  • mochajs/mochaAvatar mochajs

    mochajs/mocha

    22,967Vezi pe GitHub↗

    Mocha is a JavaScript test runner and framework designed to execute automated test suites across multiple runtimes, including Node.js and web browser environments. It functions as a pluggable testing tool for organizing and validating unit, integration, and functional tests. The project distinguishes itself through a plugin-based extension interface that allows for custom functionality and reporting. It supports a multi-runtime approach, enabling the same test suite to run in different JavaScript environments, and includes a watch mode that monitors the filesystem to trigger automatic test re

    JavaScriptbddbrowserjavascript
    Vezi pe GitHub↗22,967
  • vitest-dev/vitestAvatar vitest-dev

    vitest-dev/vitest

    15,970Vezi pe GitHub↗

    Vitest is a high-performance testing framework designed for JavaScript and TypeScript applications. It provides an integrated environment that supports unit, integration, and browser-based testing, allowing developers to execute test suites natively without requiring separate build steps or complex configuration. The project distinguishes itself through a highly optimized execution model that leverages worker-thread isolation and on-demand module transformation to provide rapid feedback. It includes a comprehensive suite of mocking and spying utilities that allow for the interception of depen

    TypeScripttesttesting-toolsvite
    Vezi pe GitHub↗15,970
  • microsoft/playwrightAvatar microsoft

    microsoft/playwright

    91,074Vezi pe GitHub↗

    Playwright is a comprehensive browser automation framework designed for end-to-end testing and web workflow automation. It provides a unified API to drive web applications across multiple browser engines, enabling developers to simulate complex user interactions, perform web scraping, and validate application behavior in consistent, isolated environments. The framework distinguishes itself through a web-first testing paradigm that prioritizes stability and resilience. By utilizing an auto-waiting actionability engine and accessibility-tree-based locators, it eliminates common sources of test

    TypeScriptautomationchromechromium
    Vezi pe GitHub↗91,074
Vezi toate cele 30 alternative pentru Pytest→

Întrebări frecvente

Ce face pytest-dev/pytest?

pytest este un cadru de testare pentru Python care oferă un runner în linia de comandă pentru descoperirea și executarea suitelor de testare. Este construit pe o arhitectură modulară care utilizează aserțiuni standard de limbaj pentru a verifica corectitudinea codului, inspectând automat expresiile pentru a oferi rapoarte detaliate de eșec fără a necesita metode de aserțiune specializate.

Care sunt principalele funcționalități ale pytest-dev/pytest?

Principalele funcționalități ale pytest-dev/pytest sunt: Test Frameworks, Dependency Injection, Data-Driven Parametrization, Test Execution Runners, Test Fixture Systems, Fixture Definitions, Execution Assertions, CLI Test Runners.

Care sunt câteva alternative open-source pentru pytest-dev/pytest?

Alternativele open-source pentru pytest-dev/pytest includ: thomhurst/tunit — TUnit is a comprehensive C# testing framework, mocking library, and fluent assertion tool. It utilizes source… mochajs/mocha — Mocha is a JavaScript test runner and framework designed to execute automated test suites across multiple runtimes,… vitest-dev/vitest — Vitest is a high-performance testing framework designed for JavaScript and TypeScript applications. It provides an… microsoft/playwright — Playwright is a comprehensive browser automation framework designed for end-to-end testing and web workflow… mobile-dev-inc/maestro — Maestro is a declarative mobile and web UI automation framework designed for end-to-end testing. It operates by… onsi/ginkgo — Ginkgo is a behavior-driven development testing framework, assertion library, and test runner for Go. It provides a…