{"categories":[{"label":"Testing","url":"https://skillfed.io/packages/category/software-development-testing"}],"enrichment":{"capability":"A pytest plugin that automatically reruns failing tests up to a configurable number of times, allowing tests that depend on unreliable components to pass without being skipped or removed.","skillfed_tags":["pytest-plugin","test-reliability"],"use_cases":["Mark tests that depend on external APIs or services as flaky to avoid false test failures from transient network issues.","Retry tests with timing-sensitive assertions that occasionally fail due to system load or scheduling variance.","Apply flaky behavior to an entire test class while overriding retry counts for specific test methods that need different handling.","Use a custom rerun_filter to skip retries for certain error types (e.g., application crashes) while retrying for others.","Add delays between retries using a rerun_filter to allow external services time to recover before the next attempt."],"what_it_does":"Flaky is a pytest plugin that automatically reruns tests that fail, allowing you to handle tests that depend on unreliable external components\u2014such as flaky network services or timing-sensitive fixtures\u2014without skipping them or removing them from your suite. Instead of treating intermittent failures as permanent, you decorate a test with @flaky and specify how many times it should run and how many times it must pass to be considered successful.\n\nThe plugin works by intercepting test failures and retrying them according to your configuration. You can apply the decorator to individual test functions or entire test classes, override behavior per-test, and even provide custom filter functions to decide which failures warrant a retry and which should fail immediately. It integrates seamlessly with pytest and can be disabled via command-line flags if needed.","worth_installing":"Yes, if you have tests that depend on unreliable components and want to reduce false failures without removing or skipping tests. The plugin is mature, widely used, and has no security vulnerabilities. The aging maintenance status is not a blocker for stable functionality, but verify compatibility with your current pytest version before adopting."},"id":"flaky","links":{"html":"https://skillfed.io/packages/flaky","md":"https://skillfed.io/packages/flaky.md","pypi":"https://pypi.org/project/flaky/"},"maintenance":{"status":"aging"},"meta":{"latest_release":"2024-03-12","license_spdx":null,"license_treatment":"permissive","name":"flaky","python_support":"supports_current","summary":"Plugin for pytest that automatically reruns flaky tests."},"popularity":{"monthly_downloads":4217322,"position":2361,"tier":"top_5000"},"security":{"n_vulnerabilities":0},"version":"3.8.1"}
