GitPedia

Pytest sugar

a plugin for py.test that changes the default look and feel of py.test (e.g. progressbar, show tests that fail instantly)

From Teemu·Updated June 14, 2026·View on GitHub·

This plugin extends [pytest](http://pytest.org) by showing failures and errors instantly, adding a progress bar, improving the test results, and making the output look better. The project is written primarily in Python, distributed under the BSD 3-Clause "New" or "Revised" License license, first published in 2013. It has gained significant community traction with 1,533 stars and 82 forks on GitHub. Key topics include: pytest, pytest-plugin, pytest-sugar, python, testing.

Latest release: v1.1.1pytest-sugar 1.1.1
August 23, 2025View Changelog →

pytest-sugar ✨

Build Status
PyPI Version
Downloads
License

This plugin extends pytest by showing failures and errors instantly, adding a progress bar, improving the test results, and making the output look better.

render1667890332624-min

Installation

To install pytest-sugar:

python -m pip install pytest-sugar

Once installed, the plugin is activated automatically. Run your tests normally:

pytest

If you would like more detailed output (one test per line), then you may use the verbose option:

pytest --verbose

If you would like to run tests without pytest-sugar, use:

pytest -p no:sugar

Usage

pytest-sugar provides several command-line options to customize its output and behavior. These options enhance test reporting and Playwright trace integration:

Show detailed test failures instead of one-line tracebacks.
Use this if you want to see the full failure information instantly.

--old-summary

Force pytest-sugar output even if pytest doesn’t detect a real terminal.
Useful when running tests in CI systems or other non-interactive environments.

--force-sugar

Specify the directory where Playwright trace files are stored.
Defaults to Playwright default: "test-results"

--sugar-trace-dir <directory>

Disable Playwright trace file detection and output display.
Use this if you want to turn off trace collection or display entirely.

--sugar-no-trace

How to contribute 👷‍♂️

Open in GitHub Codespaces

Make sure to read our Code of Conduct. You can get started modifying the codebase with the following commands. Alternatively, you can try Github Codespaces (click the badge above). Push the changes to your repository & create a pull request.

git clone git@github.com:Teemu/pytest-sugar.git
cd pytest-sugar
python -m venv .venv
source .venv/bin/activate
echo ".venv" >> .git/info/exclude
pip install -e ".[dev]"
pre-commit install

There are two ways of running tests. We have our proper tests:

pytest .

There are also fake tests that can be used to visualise the output:

pytest faketests

When submitting a pull request, please add a RELEASE.md file in the root of the project that contains the release type (major, minor, patch) and a summary of the changes that will be used as the release changelog entry. For example:

markdown
Release type: patch For long-running tests, display minutes and not only seconds.

Requirements

You will need the following prerequisites in order to use pytest-sugar:

  • Python 3.10 or newer
  • pytest 7 or newer

Running on Windows

If you are seeing gibberish, you might want to try changing charset and fonts. See this comment for more details.

Similar projects

Contributors

Showing top 12 contributors by commit count.

View all contributors on GitHub →

This article is auto-generated from Teemu/pytest-sugar via the GitHub API.Last fetched: 6/19/2026