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.1.0.tar.gz (14.4 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.1.0-py3-none-any.whl (14.3 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for emtest-0.1.0.tar.gz
Algorithm Hash digest
SHA256 5005a4bcc4604202af4c46f11c374be1acb6eac299696c3832a7422609f6c052
MD5 c2b55036ae361e3170b559971862bb46
BLAKE2b-256 7cba87e9fe934e39113acf87045034416ea0b3085fe5ed456b99395df46e2ea9

See more details on using hashes here.

File details

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

File metadata

  • Download URL: emtest-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 14.3 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.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 0bf6af72654ebfee078df1e600c1a6dc1cbdb5b50edcda27b16484c9263c5bfd
MD5 96c15d09fce1eb963e1b59429545f4ff
BLAKE2b-256 6e9c94b97f08a0ee745a2250e0d1c842b2190874a601a658310bcc35bf4c92cc

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