Generate a test from an API contract

Authoring & analysis

loadr gen reads an API contract and writes one request per operation with schema-derived example data. --fuzz adds spec-invalid and adversarial variants gated on never a 5xx.

Browse all 52 demos 12 categories
Run it
$ loadr gen openapi specs/petstore.yaml -o plan.yaml
examples/specs/petstore.yaml
openapi: 3.0.0
info: { title: Petstore, version: "1.0" }
servers: [{ url: https://api.petstore.example/v1 }]
paths:
  /pets:
    get:
      operationId: listPets
      parameters: [{ name: limit, in: query, schema: { type: integer, minimum: 10 } }]
      responses: { "200": { description: ok } }
    post:
      operationId: createPet
      requestBody:
        content:
          application/json:
            schema: { type: object, required: [name], properties: { name: {type: string}, tag: {type: string} } }
      responses: { "201": { description: created } }
  /pets/{petId}:
    get:
      operationId: getPet
      parameters: [{ name: petId, in: path, required: true, schema: {type: string} }]
      responses: { "200": {description: ok} }

View raw: examples/specs/petstore.yaml

What it shows

  • openapi · postman · graphql · grpc
  • Params & bodies from the schema; $ref resolved
  • --fuzz = a robustness suite from the contract