Skip to content

kvs8/vedro-lazy-rerunner

Repository files navigation

vedro-lazy-rerunner

PyPI Python Version

The vedro-lazy-rerunner is a plugin for the Vedro testing framework. It reruns failed scenarios until they pass for the first time. If none of the reruns are successful, the test is marked as failed after the designated number of attempts.

Installation

  1. Install the package using pip:
$ pip3 install vedro-lazy-rerunner
  1. Then, activate the plugin in your vedro.cfg.py configuration file:
# ./vedro.cfg.py
import vedro
import vedro_lazy_rerunner

class Config(vedro.Config):

    class Plugins(vedro.Config.Plugins):

        class LazyRerunner(vedro_lazy_rerunner.LazyRerunner):
            enabled = True

Usage

Run Vedro with the --lazy-reruns option set to the desired number of reruns:

$ vedro run --lazy-reruns=5

Examples

  • A test will not be rerun further if it passes during one of the reruns:
$ vedro run --lazy-reruns=5
Scenarios
* 
 ✔ check number
 │
 ├─[1/2] ✗ check number
 │
 ├─[2/2] ✔ check number
 
# 1 scenario, 1 passed, 0 failed, 0 skipped (0.01s)

The test passed on the second attempt. The remaining 3 attempts were not needed. The test is considered passed.

  • A test is marked as failed if it does not pass in any of the attempts:
$ vedro run --lazy-reruns=5
Scenarios
* 
 ✗ check number
 │
 ├─[1/5] ✗ check number
 │
 ├─[2/5] ✗ check number
 │
 ├─[3/5] ✗ check number
 │
 ├─[4/5] ✗ check number
 │
 ├─[5/5] ✗ check number

# 1 scenario, 0 passed, 1 failed, 0 skipped (0.02s)

The test is considered failed as it did not pass in any of the 5 attempts.

About

Rerunner plugin for the Vedro testing framework

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published