Skip to content

Catalyst is a lightweight and extensible API testing tool. It allows you to define and execute HTTP API tests through a declarative configuration file.

License

Notifications You must be signed in to change notification settings

caffeidine/catalyst

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Catalyst

Version License: MPL-2.0 Crates.io Documentation crates.io total download number

A lightweight and powerful API testing tool

Documentation | Installation | Examples

Overview

Catalyst is a lightweight and extensible HTTP API testing tool. It allows you to define and execute API tests through a declarative configuration file, without writing any code.

Features

  • Declarative Testing: Configure your API test scenarios using a simple TOML file
  • Variable Management: Chain your tests by extracting and storing variables (cookies, JSON data, etc.)
  • Configuration Validation: Syntax and semantic checks before execution
  • JSON Assertions: Partial validation of JSON responses with regex support
  • Performance: Measure and validate response times

Installation

cargo install catalyst

Examples

Create your test file in your project .catalyst/tests.toml

[config]
base_url = "http://localhost:8080"
default_headers = { "User-Agent" = "Catalyst", "Content-Type" = "application/json" }

[[tests]]
name = "Example Test"
method = "GET"
endpoint = "/api/example"
expected_status = 200
max_response_time = 500 # maximum time in ms
assertions = [
  { type = "contains", path = "data.status", value = "success" },
  { type = "regex", path = "data.id", pattern = "^[0-9a-f]{8}$" }
]

Usage

Execute the tests from the command line:

# Run all tests
catalyst run

# List all tests
catalyst list --verbose

# Validate your configuration
catalyst validate

Documentation

For complete documentation, visit catalyst.caffeidine.com.

License

This project is licensed under the MPL-2.0.

About

Catalyst is a lightweight and extensible API testing tool. It allows you to define and execute HTTP API tests through a declarative configuration file.

Topics

Resources

License

Stars

Watchers

Forks