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:8089and 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
Metadata
Release files for stac-api-load-testing 0.2.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| stac_api_load_testing-0.2.0.tar.gz | 4.4 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| stac_api_load_testing-0.2.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 9.6 kB
Release files / stac_api_load_testing-0.2.0.tar.gz
| Download URL | stac_api_load_testing-0.2.0.tar.gz |
|---|---|
| Size | 4.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
590d786616d64cecc2d79fb44b430332073fc35acf98510b0aeb6bed4e2f0d9d
|
|
BLAKE2b-256 checksum How to use checksums |
9ea97f894e92bbe2f872805683c0e394b08fb0e2c6d233b0c702e1074415fd6f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.11.4
|
Release files / stac_api_load_testing-0.2.0-py3-none-any.whl
| Download URL | stac_api_load_testing-0.2.0-py3-none-any.whl |
|---|---|
| Size | 5.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
632db41f80227117a272cfef6ca73f854b2f11dbee0b986ea20b6a5e583ab2b2
|
|
BLAKE2b-256 checksum How to use checksums |
efab40f602f9c3c0840c3021a41ab97e0dc05ec04d33fae5c2143f9774088b29
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.11.4
|
Security for stac-api-load-testing 0.2.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.