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
File details
Details for the file stac_api_load_testing-0.2.0.tar.gz
.
File metadata
- Download URL: stac_api_load_testing-0.2.0.tar.gz
- Upload date:
- Size: 4.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 590d786616d64cecc2d79fb44b430332073fc35acf98510b0aeb6bed4e2f0d9d |
|
MD5 | 6c3872da348f1b601fcb03cc1f31e1f5 |
|
BLAKE2b-256 | 9ea97f894e92bbe2f872805683c0e394b08fb0e2c6d233b0c702e1074415fd6f |
File details
Details for the file stac_api_load_testing-0.2.0-py3-none-any.whl
.
File metadata
- Download URL: stac_api_load_testing-0.2.0-py3-none-any.whl
- Upload date:
- Size: 5.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 632db41f80227117a272cfef6ca73f854b2f11dbee0b986ea20b6a5e583ab2b2 |
|
MD5 | f97f3c723318f3e861722e3449e4e47f |
|
BLAKE2b-256 | efab40f602f9c3c0840c3021a41ab97e0dc05ec04d33fae5c2143f9774088b29 |