Skip to main content

Testing utilities which I find useful.

Project description

emtest - Python Testing Utilities

A Python package providing testing utilities.

Features

🎨 Clean Test Output for Pytest

  • MinimalReporter: Custom pytest reporter with clean, colored output using simple symbols (✓/✗/-)
  • Configurable Output: Toggle between minimal and standard pytest output modes

🔧 Development Utilities

  • Source Path Management: Dynamically add directories to Python path for testing source code
  • Module Source Validation: Ensure modules are loaded from source directories (not installed packages)
  • Thread Cleanup Monitoring: Wait for and verify proper thread cleanup in tests

⚡ Enhanced Test Execution

  • Dual Execution Pattern: Run tests both as pytest tests and standalone Python scripts
  • Breakpoint Integration: Easy debugging with pytest's --pdb integration
  • Progress Indicators: Visual progress bars for waiting operations

Installation

pip install emtest

Usage

See the Usage docs for explanations and a complete working example showing:

  • Basic test setup with conftest.py
  • Showing and hiding logs
  • Dual execution pattern implementation
  • Source loading validation
  • Thread cleanup testing
  • Options like minising output, python-debugger breakpoints and more

Documentation

Roadmap

Contributing

Get Involved

  • GitHub Discussions: if you want to share ideas
  • GitHub Issues: if you find bugs, other issues, or would like to submit feature requests
  • GitHub Merge Requests: if you think you know what you're doing, you're very welcome!

Donate

To support me in my work on this and other projects, you can make donations with the following currencies:

Donations help me:

  • dedicate more time to developing and maintaining open-source projects
  • cover costs for IT resources

About the Developer

This project is developed by a human one-man team, publishing under the name Emendir.
I build open technologies trying to improve our world; learning, working and sharing under the principle:

Freely I have received, freely I give.

Feel welcome to join in with code contributions, discussions, ideas and more!

Open-Source in the Public Domain

I dedicate this project to the public domain. It is open source and free to use, share, modify, and build upon without restrictions or conditions.

I make no patent or trademark claims over this project.

Formally, you may use this project under either the:

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

emtest-0.0.9.tar.gz (14.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

emtest-0.0.9-py3-none-any.whl (13.8 kB view details)

Uploaded Python 3

File details

Details for the file emtest-0.0.9.tar.gz.

File metadata

  • Download URL: emtest-0.0.9.tar.gz
  • Upload date:
  • Size: 14.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.3

File hashes

Hashes for emtest-0.0.9.tar.gz
Algorithm Hash digest
SHA256 83946785202494fefdd50106e1c920ae15b332b6af5b33044b08fa550ff25db9
MD5 3fa800cc3743a8cfc5c6881f7cd6816a
BLAKE2b-256 c6082caebba609aade91cbdc6dd7556dae0f87eac59d38b38970f099c90847c9

See more details on using hashes here.

File details

Details for the file emtest-0.0.9-py3-none-any.whl.

File metadata

  • Download URL: emtest-0.0.9-py3-none-any.whl
  • Upload date:
  • Size: 13.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.3

File hashes

Hashes for emtest-0.0.9-py3-none-any.whl
Algorithm Hash digest
SHA256 b84ea56504c18c843e532c37824b79c33b1bb267d3bfaf2dd87d0d93d0ada090
MD5 80774f69010c6d3f6b6f1ef9da7780c2
BLAKE2b-256 0b96e32025a79ae54191c55a60b5845ff9e5b68b3ad2630c2eb32fe4f1616de5

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page