Metadata-Version: 2.1
Name: pytest-tally
Version: 1.0.0
Summary: A Pytest plugin to generate realtime summary stats, and display them in-console using a text-based dashboard.
Home-page: https://github.com/jeffwright13/pytest-tally
Author: Jeff Wright
Author-email: jeff.washcloth@gmail.com
License: MIT
Keywords: pytest pytest-plugin testing tui rich blessed
Classifier: Framework :: Pytest
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Topic :: Software Development :: Testing
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Operating System :: OS Independent
Classifier: License :: OSI Approved :: MIT License
Requires-Python: >=3.8
Description-Content-Type: text/markdown
License-File: LICENSE

# pytest-tally

### A Pytest plugin that displays test run progress in-console. ###

![2023-03-10 14 16 57](https://user-images.githubusercontent.com/4308435/224430560-04f9de9e-2446-4a78-afb6-5f5f4bbfb05c.gif)


## Why?
I run a lot of long-duration test campaigns that generate copious amounts of console output. I usually monitor their progress by periodically checking the terminal to see if anything has failed so far. This usually means scrolling back in the console, looking for that telltale FAILED indication. It can be a bit of a pain hunting for that information!

This plugin writes up-to-date summary statistics for each test, as it executes, to a file on disk. That file is then continually read by a small client that prints its results to terminal. That way I can split my screen and monitor both the raw console output from Pytest and the client's summary output. And suddenly life becaomes just a little bit brighter. :-)

## Install ##
    pip install pytest-tally

## Usage ##
    usage: tally [-h] [-c] [-f] [-r ROWS] [filename]

    positional arguments:
    filename              path to data file

    options:
    -h, --help            show this help message and exit
    -c, --clear           [c]lear existing data when starting a new run (default: False)
    -f, --fixed-width     make all table rows [f]ixed-width (default: False)
    -r ROWS, --rows ROWS  max number of [r]ows to display (default: no limit)

- Run Pytest like you normally would, but specify the `--tally` option: `pytest --tally`
- Open another terminal session, activate your venv, and type in `tally` to start the client.
- Ctrl-C exits the client (for now - improvements coming)
