Skip to main content

Decorators and utilities for python performance unit testing

Project description

python-perf-unit

Version License: MIT




python-perf-unit is a Python package designed to enhance unit testing with performance metrics. By integrating with Python's unittest framework, it enables the execution of test methods with performance analysis.

Features

  • Performance Testing: Automatically times unittest test methods.
  • Median Execution Time Assertion: Asserts median execution time of test methods is below a specified threshold.
  • Parallel Execution: Runs tests in parallel using multithreading.
  • Percentile Reporting: Detailed percentile reports for test execution times.

Installation

pip install python-perf-unit

Usage

Decorate your unittest class with @perf_unit_test_class to turn standard unit tests into performance tests.

from perf_unit import perf_unit_test_class
import unittest

@perf_unit_test_class
class MyTestCase(unittest.TestCase):

    def test_example1(self):
        # Your test code here
        pass

    def test_example2(self):
        # Another test code
        pass

if __name__ == '__main__':
    unittest.main()

Code styling

black used for auto-formatting code read,

pylint used for code linting and pep8 compliance read,

mypy used for type hinting read,

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

python_perf_unit-0.1.1b0.tar.gz (3.6 kB view details)

Uploaded Source

File details

Details for the file python_perf_unit-0.1.1b0.tar.gz.

File metadata

  • Download URL: python_perf_unit-0.1.1b0.tar.gz
  • Upload date:
  • Size: 3.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.18

File hashes

Hashes for python_perf_unit-0.1.1b0.tar.gz
Algorithm Hash digest
SHA256 945948e7ad993716a82728cf932b7c7efaab675c906a858439a16dcf8a41b10a
MD5 e3558a3896cfd416dcab53fa597fb0f9
BLAKE2b-256 dec522a5059d6a6f3246044d2ed985421781bcc6b48d636e081ca493cd45bb11

See more details on using hashes here.

Supported by

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