Run a test suite one failing test at a time.
pytest-stepwise is a plugin for pytest that run all tests until a test fails, and then continue next test run from where the last run failed. You may think of it as a combination of the -x option, which exits the test run after a failing test, and the --lf option from pytest-cache, which only runs failing tests.
pytest-stepwise depends on pytest-cache, which will be installed as a dependency.
How to use it?
- Install the plugin - pip install pytest-stepwise.
- Run py.test --stepwise (you can also use the alias --sw).
- Watch the test fail and fix it.
- Run py.test --stepwise again. The test suite will continue to run right from where it was.
Use the --skip option to ignore one failing test and stop the test execution on the second failing test instead. This is useful if you get stuck on a failing test and just want to ignore it until later.
When is this useful?
pytest-stepwise was written for use when a large part of the test suite is failing. In this case, pytest-stepwise allows you to focus on fixing one test at the time instead of being overwhelmed by all failing tests. It should however be noted that all tests need to be re-run after to make sure that any changes made when fixing one test has not broken some other test.
Please submit an issue if you have any suggestions regarding use cases of pytest-stepwise.
pytest-stepwise is compatible with pytest 2.2 -> 2.8. For pytest 2.7 and earlier, pytest-cache is required as a dependency.
- 0.1 - Initial version.
- 0.2 - Clear cache after test run when the plugin is not active. Added --skip option.
- 0.3 - Fixed issue when failing tests are removed. Fixed compatibility with --pdb option. Stop on errors as well as on test failures.
- 0.4 - Refactoring, pytest 2.8 compatiblity. Stop test execution on collection errors.
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
|Filename, Size & Hash SHA256 Hash Help||File Type||Python Version||Upload Date|
(6.0 kB) Copy SHA256 Hash SHA256
|Egg||2.7||Dec 1, 2015|
(5.9 kB) Copy SHA256 Hash SHA256
|Wheel||py2.py3||Dec 1, 2015|
(3.5 kB) Copy SHA256 Hash SHA256
|Source||None||Dec 1, 2015|