Skip to main content

Cilada

É uma cilada, Bino! 🚚

Cilada is a Python 3.11+ CLI that reads an online OpenAPI contract, generates request cases, and runs load tests with Locust.

Installation

python3 -m venv .venv
source .venv/bin/activate
python3 -m pip install -e ".[dev]"

Create a commented configuration template:

cilada config init

The command never overwrites an existing file unless --force is supplied. Use --path path/.cilada.toml to create the file elsewhere. Keep secrets out of version control and reference environment variables such as Authorization = "Bearer ${CILADA_TOKEN}".

Usage

cilada run
cilada run --openapi-url https://sandbox.example.com/openapi.json
cilada run --dry-run
cilada run --non-interactive

Interactive runs request a missing OpenAPI URL and required headers. The OpenAPI URL is required to load the contract. Sensitive header names (Authorization, token, and key) use hidden input. Declining a required header triggers an explicit confirmation; accepted runs omit that header from requests.

Progress and results

The CLI displays three setup steps. During execution, Locust shows its native statistics table. Its Name column uses the shortest unique URL suffix and its Type column shows the HTTP method.

The final summary reports request and failure counts, global minimum/average/ maximum response times, totals by HTTP method, and metrics by HTTP status code. Each status code includes request count and minimum, average, and maximum response times. Requests that fail before receiving an HTTP response are listed as no response.

Case generation

  • test.enabled_methods controls executed methods.
  • include_paths and exclude_paths accept glob patterns such as /patients/*.
  • cases_per_operation produces variants from examples, defaults, enums, optional fields, and boundary values.
  • test.failure_status_classes defaults to [5]; use [4, 5] to also mark 4xx responses as failures.

Safety

The default methods are GET, HEAD, and OPTIONS. Enable POST, PUT, PATCH, or DELETE only in an isolated, authorized environment with disposable data.

Quality

make unit-test
make lint
make typecheck

Run make install to install development dependencies, make build to create distribution artifacts, and make format (or make formatter) to format the project.

Deliberate limitations

  • JSON Schema $ref is not expanded.
  • Only application/json request bodies are generated.
  • OAuth2 token refresh requires a future hook; static headers work for valid tokens.

Portuguese documentation is available in README_PT.md.

Release files for cilada 1.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for cilada 1.0.0
File Size Uploaded
cilada-1.0.0.tar.gz 30.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for cilada 1.0.0
File Interpreter ABI Platform
cilada-1.0.0-py3-none-any.whl Python 3 none any Details

Total release size: 47.9 kB

Release files / cilada-1.0.0.tar.gz

Download URL cilada-1.0.0.tar.gz
Size 30.4 kB
Tags Source
SHA-256 checksum
How to use checksums
1aa5dcd5cebd8453c555e49cdbefee4c5d43e3063585b92298ff565ec1a10565
BLAKE2b-256 checksum
How to use checksums
5ef5eaacf95c81f98d1fc787080c147e8d37eaf91ac05bf805f37062c18b5a9c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 4, 2026.

Transparency log

Release files / cilada-1.0.0-py3-none-any.whl

Download URL cilada-1.0.0-py3-none-any.whl
Size 17.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
796dd5bc1348481b5dcbc2670747d995adb3ee090b4b2e473d10959c55da960e
BLAKE2b-256 checksum
How to use checksums
d68ae99f797a7b6e3af180eb8310199dfce9165e069620cf8056e3040a92a741
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 4, 2026.

Transparency log

Release history Release notifications | RSS feed

1.1.0

2 release files

This release

1.0.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page