Skip to content

Repository files navigation

Catalyst

VersionLicense: MPL-2.0Crates.ioDocumentationcrates.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 --locked

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 = 200max_response_time = 500# maximum time in msassertions = [
{ 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

Stars

4 stars

Watchers

0 watching

Forks

Releases

Used by

Contributors

Languages