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.2.tar.gz (15.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.1.2-py3-none-any.whl (15.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: emtest-0.1.2.tar.gz
  • Upload date:
  • Size: 15.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.1.2.tar.gz
Algorithm Hash digest
SHA256 f147251228df9ef05f2567dc26e25e03f943917a653856e24f6cebe892431a13
MD5 2defe7de23ab3ce1f3cfbfb36a0e336e
BLAKE2b-256 ae7ca8fd980e5d9a74664decccfc52d71b6a4c4cd14a0f3681d4fbd6b0c54315

See more details on using hashes here.

File details

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

File metadata

  • Download URL: emtest-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 15.1 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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 76ab9dbd04153b54fd10ff6088b0f7e5b3f904ab7572a816f140bccc3e3b85f3
MD5 9efdaf0347e9450edad9aa859eee101a
BLAKE2b-256 5efc2d8a57bc45fee96d1816d670d6f3eba68444c540adb1e3e1729900a92eaa

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