NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
PyPI · #2408 most downloaded on PyPI
Plugin for pytest that automatically reruns flaky tests.
Last release 3 years ago
no release in 18 months
Ships unpredictably
gaps range from 9 days to 3.7 years
Most releases are documented
notes for 25 of 38 stable releases
Nothing withdrawn
no release was ever pulled
13 years old
38 releases · first in 2014
New release ( #204 ) * prepare for 3.8.0 release * bump version
Fix incompatibilities with newer dependencies
Fix incompatibilities with newer dependencies (#201)
This commit fixes an incompatibility with pytest 8.1.1,
and some with python 3.12.
This commit also fixes up some pycodestyle and
pylint problems that snuck in with some earlier commits.
Co-authored-by: Jonathan Karlsen <JONAK@equinor.com>
One column per quarter.
nose support has been removed.
Python 3.12 supported.
Bugfixes
Flaky now retries tests which fail during setup.
Flaky now retries tests which fail during setup.
Reraise KeyboardInterrupt when running tests under pytest.
Bugfixes - Reraise KeyboardInterrupt when running tests under pytest.
Do not print an empty report if no tests marked 'flaky' were run at all (#116). NOTE: This change could be breaking if you relied on the flaky report
Do not print an empty report if no tests marked 'flaky' were run at all (#116). NOTE: This change could be breaking if you relied on the flaky report being printed.
Add rerun_filter parameter to _make_test_flaky
Add rerun_filter parameter to _make_test_flaky
Fix #143 - fall back to old pytest marker API for older pytest version (
Bugfixes - Fall back to old pytest marker API for older pytest version (get_marker vs iter_markers).
* Support Python 3.6 and 3.7 * Fixes #102 by printing formatted tracebacks in the flaky report * Fixes #119 by ensuring a test is only reported as suc
Misc improvements and cleanup. (#142)
* Support Python 3.6 and 3.7
* Fixes #102 by printing formatted tracebacks in the flaky report
* Fixes #119 by ensuring a test is only reported as successful once
* Various fixes to docs
* Various modifications for pycodestyle/pylint compliance
* Updates pytest plugin to prefer the updated workeroutput terminology.
* Fixes #129 by adding a pytest marker.
Officially support and test on Python 3.6 and 3.7.
Adds a pytest marker that can be used instead of `@flaky.
Replaced references to 'slaveoutput', where possible with 'workeroutput', following the convention chosen by pytest.
Prints formatted tracebacks in the flaky report when using nose.
Bugfixes - Ensure that tests are only reported as successful to the nose runner once.
Merge pull request #141 from box/v3.5
Merge pull request #141 from box/v3.5
Version 3.5.0
Updated references to pytest instead of py.test.
Bugfixes - Flaky is now compatible with pytest >= 4.1.
Merge pull request #126 from Jeff-Meadows/master
Merge pull request #126 from Jeff-Meadows/master
Bump version to 3.4.0
Bugfixes - Flaky for pytest will no longer silently swallow errors that occur during test setup.
Flaky for Nose will now rerun tests using the afterTest plugin hook, rather than the stopTest hook. The afterTest hook is called slightly later in the
Flaky for Nose will now rerun tests using the afterTest plugin hook, rather than the stopTest hook. The afterTest hook is called slightly later in the test run process; this change allows flaky to be used with TestCase subclasses that override the test run process, and do teardown after stopTest is called. In particular, this means that flaky is now compatible with Django's LiveServerTestCase.
Flaky will completely suppress the flaky report if --no-success-flaky-report is specified and no tests needed to be rerun.
Flaky will completely suppress the flaky report if --no-success-flaky-report is specified and no tests needed to be rerun.
Bugfixes - Flaky will no longer cause py.test --pep8 to fail.
Don't retry @skipped tests. Fixes #96, which is a regression on #43.
@skipped tests. Fixes #96, which is a regression on #43.Flaky's automated tests now include a run with the pytest-xdist plugin enabled.
Flaky's automated tests now include a run with the pytest-xdist plugin enabled.
Flaky for pytest has slightly changed how it patches the runner. This simplifies the plugin code a bit, but, more importantly, avoids reporting test retries until flaky is done with them. This should improve compatibility with other plugins.
Nothing published for this version
Flaky for pytest no longer passes None for the first 2 arguments to the optional rerun_filter.
Bugfixes
Flaky for pytest no longer passes None for the first 2 arguments to the optional rerun_filter.
Flaky for pytest no longer causes errors with the pytester plugin.
Bugfixes
Flaky for pytest no longer causes errors with the pytester plugin.
Flaky for pytest now reruns test setup and teardown. This is a possibly breaking change.
Flaky for pytest now reruns test setup and teardown. This is a possibly breaking change.
Bugfixes
Bug with nose and multiprocess fixed.
Nothing published for this version
The flaky report is now available under nose with the multiprocessing plugin.
Bugfixes
The flaky report is now available under nose with the multiprocessing plugin.
The @flaky decorator now accepts a rerun_filter parameter. This allows for failing certain types of failures/errors immediately instead of rerunning.
The @flaky decorator now accepts a rerun_filter parameter. This allows for failing certain types of failures/errors immediately instead of rerunning.
Flaky now accepts a command line option, --no-success-flaky-report. When that option is present, flaky won't add information about test successes to the flaky report.
Flaky will no longer raise a UnicodeEncodeError for flaky tests which raise exceptions with non-ascii characters.
Bugfixes
Flaky will no longer raise a UnicodeEncodeError for flaky tests which raise exceptions with non-ascii characters.
Flaky will no longer cause nose to report non-flaky test failures and errors twice.
Flaky now works with tests that are parametrized with py.test.
Flaky will no longer raise a KeyError for failed flaky tests.
Bugfixes
Flaky will no longer raise a KeyError for failed flaky tests.
Flaky for nose now reruns failed tests *after* calling the tearDown() method. This change is correct, but is a change in behavior.
Bugfixes
Flaky for nose now reruns failed tests after calling the tearDown() method. This change is correct, but is a change in behavior.
Flaky now copies flaky attributes to collected tests, rather than modifying them on the test declaration. This means that tests collected from classes
Bugfixes
Flaky now copies flaky attributes to collected tests, rather than modifying them on the test declaration. This means that tests collected from classes that inherit tests marked flaky (from a base class) will now work correctly.
Running py.test with doctests will no longer cause the doctests to fail. Doctests cannot, however, be marked flaky.
Tests marked flaky will now be correctly rerun from pytest when using the pytest-xdist option. However, they will not be run if the --boxed option is used due to a technical limitation.
Documentation updates
Updated documentation to correctly specify how to suppress the flaky report under py.test.
Tests marked flaky that are part of a class inheriting from unittest.TestCase will now be rerun when they fail under py.test.
Bugfixes
Tests marked flaky that are part of a class inheriting from unittest.TestCase will now be rerun when they fail under py.test.
Tests marked flaky that fail after exhausting reruns will now be reported to the nose test runner. This is a *breaking* change, because the exit code
Bugfixes
Tests marked flaky that fail after exhausting reruns will now be reported to the nose test runner. This is a breaking change, because the exit code of the nose test runner will indicate failure in this case.
Tests marked flaky will now be marked as failures after they have failed max_runs - min_passes + 1 times. This is a breaking change as well, because a bug in previous versions was allowing tests with min_passes > 0 to run more than max_runs times.
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →