Skip to main content

An Automatic REST Endpoint Performance Test Generation Suite

Project description

OpenAPI Perf Logo

OpenAPI Perf

🤖 Automatic OpenAPI Performance Testing 🤖

Tests Docs Package version Python


Documentation: https://openapi-perf.awtkns.com

Source Code: https://github.com/awtkns/openapi-perf

Continous Integration: https://github.com/awtkns/openapi-perf-action


This project will make use of the OpenAPI schema to build an automated REST API performance testing and benchmarking tool. OpenAPI defines an interface for REST APIs allowing automated generation of an API schema which provides insights on the API's usage and expected input and response values. Using the OpenAPI schema we hope automatically generate tests covering all endpoints. We will use these generated tests to both test for endpoint correctness and to gather relevant performance metrics such as response time. We will finally generate an informative report on endpoint performance and correctness, allowing developers to quickly determine potentially problematic endpoints and endpoints that would benefit most from optimization.

Installation

pip install openapi-perf

Usage

Test Generation

This will create generate property-based performance tests for an endpoint and save the test schema to your results directory.

from openapi_perf import OpenAPIPerf

op = OpenAPIPerf(
  endpoint_url = "http://localhost:5000",
  results_dir = "/path/to/results/directory"
)

You can also load existing tests from a test schema file like this:

op = OpenAPIPerf(
  test_schema_path = "path/to/test_schema.json"
)

Schema files can be modified to configure test execution.

Test Execution

To run these tests, use

op.run()

This will generate a report pdf file in your results directory

For detailed usage, refer to our docs

Download files

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

Source Distribution

openapi-perf-0.0.5.tar.gz (9.2 kB view details)

Uploaded Source

Built Distribution

openapi_perf-0.0.5-py3-none-any.whl (12.5 kB view details)

Uploaded Python 3

File details

Details for the file openapi-perf-0.0.5.tar.gz.

File metadata

  • Download URL: openapi-perf-0.0.5.tar.gz
  • Upload date:
  • Size: 9.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.6.13

File hashes

Hashes for openapi-perf-0.0.5.tar.gz
Algorithm Hash digest
SHA256 39d78414fee9a4fb2dd4628ed95eba872c2b03018b95416ac069e68c1a7d2581
MD5 5630e741391e31761df2a7a9af0b7942
BLAKE2b-256 067fad1664c2accf27f34ec32d52920e69f1ca447aad171f6af01ba712d0f2ad

See more details on using hashes here.

File details

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

File metadata

  • Download URL: openapi_perf-0.0.5-py3-none-any.whl
  • Upload date:
  • Size: 12.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.6.13

File hashes

Hashes for openapi_perf-0.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 f39cfad5f2286963d46563f466ea2f7d99c7eca74871f91b5bf6d57b84566d90
MD5 a5820ff7447fb550b0910bb65e5c1755
BLAKE2b-256 051d9a9a7b35e7e97602e50711c688febb04f8646786c5ad900ff669c26c32f1

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