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.5.tar.gz (13.3 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.5-py3-none-any.whl (12.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: emtest-0.0.5.tar.gz
  • Upload date:
  • Size: 13.3 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.5.tar.gz
Algorithm Hash digest
SHA256 f241563c78ba4fe79c2f48bf86e78e41650e0a9b20d344bc2ff68940e7883a5c
MD5 fe527ca071b3ca55d5347469ec1fb622
BLAKE2b-256 c19d5e41bcaf9cf1664701b93b412273d088ddd1277386e94cf18f058508c837

See more details on using hashes here.

File details

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

File metadata

  • Download URL: emtest-0.0.5-py3-none-any.whl
  • Upload date:
  • Size: 12.9 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.5-py3-none-any.whl
Algorithm Hash digest
SHA256 1827d9401e2b4a5c81622bedbce55845cda9b73be2a0592d2defe3c2718471f5
MD5 fb10ca4989b6a0870e409cdd5c64563d
BLAKE2b-256 7655df56ecdb111f388d06cd30ee376efd74c0be943289486aeb147adcbfa581

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