Load testing for stac compliant apis
Project description
stac-api-load-testing
Taurus and Locust load testing tools for stac-api backends.
Run stac-fastapi backends locally (elasticsearch|opensearch|pgstac|mongo)
$ docker-compose up elasticsearch
$ docker-compose up app-elasticsearch
Install locally for development
$ pip install -e .
Install from PyPI
$ pip install stac-api-load-testing
Usage: stac-api-load-testing [OPTIONS]
Entry point for the stac-api-load-testing CLI tool.
This tool facilitates data ingestion, Locust load testing, and Taurus
performance testing against a specified STAC API endpoint.
Args:
ingest (bool): If True, ingest sample data into the specified STAC API.
locust (bool): If True, execute Locust load tests against the
specified STAC API.
taurus (bool): If True, perform Taurus performance
testing with custom settings against the specified STAC API.
concurrency (int): Specifies the number of concurrent users for Taurus testing. Default is 10.
ramp_up (str): Specifies the ramp-up period for Taurus testing, in Taurus notation (e.g., '1m' for 1 minute). Default is '1m'.
iterations (int): Specifies the number of iterations each virtual user will
execute in Taurus testing. Default is 100.
api_address (str): The base URL of the STAC API to be tested.
Options:
-i, --ingest Ingest sample data into the STAC API.
-l, --locust Run Locust load tests against the STAC API.
-t, --taurus Run the Taurus wrapper for performance testing
against the STAC API.
-c, --concurrency INTEGER Number of concurrent users for Taurus option.
-r, --ramp-up TEXT Ramp-up time for Taurus option.
-n, --iterations INTEGER Number of iterations for Taurus option.
-a, --api-address TEXT Specify the STAC API URL to test against.
--version Show the version and exit.
--help Show this message and exit.
Ingest test data - http://localhost:8084 is just an example url
$ stac-api-load-testing --ingest --api-address http://localhost:8084
Run Locust Load Testing Ouside of Taurus Wrapper
$ stac-api-load-testing --locust --api-address http://localhost:8084
- go to
http://localhost:8089
and start with desired settings
Inside of Taurus Wrapper
$ stac-api-load-testing --taurus --api-address http://localhost:8084
Debugging Locust tasks using a single simulated user
$ python stac_api_load_testing/config_files/locustfile.py
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Close
Hashes for stac_api_load_testing-0.2.0.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 590d786616d64cecc2d79fb44b430332073fc35acf98510b0aeb6bed4e2f0d9d |
|
MD5 | 6c3872da348f1b601fcb03cc1f31e1f5 |
|
BLAKE2b-256 | 9ea97f894e92bbe2f872805683c0e394b08fb0e2c6d233b0c702e1074415fd6f |
Close
Hashes for stac_api_load_testing-0.2.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 632db41f80227117a272cfef6ca73f854b2f11dbee0b986ea20b6a5e583ab2b2 |
|
MD5 | f97f3c723318f3e861722e3449e4e47f |
|
BLAKE2b-256 | efab40f602f9c3c0840c3021a41ab97e0dc05ec04d33fae5c2143f9774088b29 |