Quick Start
This guide will get you up and running with Rumour in 5 minutes.
All requests, configurations, environments, and test suites used in this guide are ready-to-run in the official Rumour Testing Examples GitHub Repository. Clone it directly to follow along:
git clone https://github.com/swahira/rumour_testing.git
cd rumour_testing/getting_started
Rumour is a file-based API workflow engine that allows you to define, execute, and chain API requests using simple TOML files.
Create Your First Request
Before proceeding, it is highly recommended to create a workspace.env.toml file at the root of your project folder. This file acts as your workspace boundary, enabling Rumour to automatically resolve variables and chain dependencies from any subfolder depth.
Create a file named hello.toml:
[request]
method = "GET"
url = "https://httpbin.org/get"
[assert]
status = 200
This request sends a simple GET request and verifies that the
response status code is 200.
Run Your First Request
Execute the request:
rumour run hello.toml
Expected output:
~/workspace/testing/getting_started ❯ rumour run hello.toml
GET https://httpbin.org/get
✓ SUCCESS: /home/bugsfounder/workspace/testing/getting_started/hello.toml (1448ms)
✓ hello.toml → PASS (1 Pass, 0 Fail, 0 Skip)
╭──────────────────────────────────────────────────────────────────────────╮
│ RUMOUR EXECUTION REPORT │
├──────────────────────────────────────────────────────────────────────────┤
│ Total Requests: 1 │
│ Successful: 1 │
│ Failed: 0 │
│ Skipped: 0 │
│ Success Rate: 100.0% │
│ Total Time: 1452ms │
╰──────────────────────────────────────────────────────────────────────────╯
Actionable Recommendations:
→ Use -v -t to see detailed latency and response diagnostics.
→ Run with --json to export this report for your CI/CD pipeline.
Understanding the Output
Let's break down the key parts of the Rumour execution output:
1. Request Header & Method
GET https://httpbin.org/get
This displays the HTTP method (GET, POST, etc.) and the target URL that Rumour executed.
2. Request Assertion Summary
✓ SUCCESS: /home/bugsfounder/workspace/testing/getting_started/hello.toml (1448ms)
Displays whether the request succeeded or failed, the absolute path to the executed request TOML, and the round-trip response time (1448ms).
3. Execution Detail
✓ hello.toml → PASS (1 Pass, 0 Fail, 0 Skip)
Shows the filename along with the test result summary:
PASS(Green): All assertions succeeded.FAIL(Red): One or more assertions failed.SKIP(Yellow): The request was skipped.- A detailed assertion breakdown:
(X Pass, Y Fail, Z Skip).
4. Rumour Execution Report
A beautifully formatted ASCII table summarizing the entire run:
- Total Requests: The total count of request files executed.
- Successful: Number of files that passed.
- Failed / Skipped: Counts of failed or skipped requests.
- Success Rate: The percentage of requests that passed.
- Total Time: The total time taken for the entire execution.
5. Actionable Recommendations
Helpful dynamically-generated hints suggesting command line flags to optimize your workflow:
- Use verbose mode (
-v -t) for detailed response body and latency diagnostics. - Run with
--jsonto export a clean JSON report for CI/CD pipelines.
Extract and Reuse Variables
Rumour can automatically extract values from responses and reuse them in subsequent requests.
Create login.toml:
[request]
method = "POST"
url = "https://httpbin.org/post"
[body]
raw = '{"username":"test","password":"secret","access_token":"mock-token-xyz"}'
[extract]
token = "json.access_token"
Create profile.toml:
[request]
method = "GET"
url = "https://httpbin.org/headers"
[headers]
"Authorization" = "Bearer {{token}}"
The extracted token variable becomes automatically available to
other requests in the workflow.
Run a Workflow
Place both files inside a directory:
getting_started/
├── hello.toml
├── login.toml
└── profile.toml
Run the workflow:
rumour run ./getting_started/
Expected output:
GET https://httpbin.org/get
✓ SUCCESS: /home/bugsfounder/workspace/testing/getting_started/hello.toml (1444ms)
POST https://httpbin.org/post
✓ SUCCESS: /home/bugsfounder/workspace/testing/getting_started/login.toml (1346ms)
GET https://httpbin.org/headers
Header: Authorization: Bearer mock-token-xyz
✓ SUCCESS: /home/bugsfounder/workspace/testing/getting_started/profile.toml (518ms)
✓ . → PASS (3 Pass, 0 Fail, 0 Skip)
╭──────────────────────────────────────────────────────────────────────────╮
│ RUMOUR EXECUTION REPORT │
├──────────────────────────────────────────────────────────────────────────┤
│ Total Requests: 3 │
│ Successful: 3 │
│ Failed: 0 │
│ Skipped: 0 │
│ Success Rate: 100.0% │
│ Total Time: 3322ms │
╰──────────────────────────────────────────────────────────────────────────╯
Actionable Recommendations:
→ Use -v -t to see detailed latency and response diagnostics.
→ Run with --json to export this report for your CI/CD pipeline.
How Rumour Coordinates Your Workflow
When you executed rumour run ./getting_started/, Rumour automatically resolved the dependencies between your requests and executed them in the correct logical order:
- Automatic Variable Chaining: Rumour detected that
login.tomlextracts thetokenvariable, andprofile.tomlconsumes it in its headers. It automatically scheduledlogin.tomlto execute first. - Dynamic Insertion: Rumour successfully resolved the variable
{{token}}to the dynamically extracted"mock-token-xyz"and transmitted it in the HTTP headers.
Running profile.toml Individually
Let's assume you've only run profile.toml without running the login.toml first, which is responsible for producing the token variable used in profile.toml.
Let's see what happens when we run profile.toml individually:
rumour run profile.toml -y
Expected output:
~/workspace/testing/getting_started master* ❯ rumour run profile.toml -y
POST https://httpbin.org/post
✓ SUCCESS: /home/bugsfounder/workspace/testing/getting_started/login.toml (1028ms)
GET https://httpbin.org/headers
Header: Authorization: Bearer mock-token-xyz
✓ SUCCESS: /home/bugsfounder/workspace/testing/getting_started/profile.toml (251ms)
✓ profile.toml → PASS (2 Pass, 0 Fail, 0 Skip)
╭──────────────────────────────────────────────────────────────────────────╮
│ RUMOUR EXECUTION REPORT │
├──────────────────────────────────────────────────────────────────────────┤
│ Total Requests: 2 │
│ Successful: 2 │
│ Failed: 0 │
│ Skipped: 0 │
│ Success Rate: 100.0% │
│ Total Time: 1283ms │
╰──────────────────────────────────────────────────────────────────────────╯
Actionable Recommendations:
→ Use -v -t to see detailed latency and response diagnostics.
→ Run with --json to export this report for your CI/CD pipeline.
Implicit Auto-Discovery
Even though you only ran a single file (profile.toml), Rumour automatically discovered that login.toml was required to resolve the token variable, and executed both files in the correct order. Rumour automatically scans your workspace directory to find the requests that produce the variables your test needs, executing them seamlessly.
Explicit Dependencies: Preventing Ambiguity (recommended)
In large, enterprise-grade workspaces, you might have multiple different request files producing the exact same variable name (e.g. login_user.toml, login_admin.toml, or oauth.toml).
To prevent naming collisions, establish strict determinism, and maintain bulletproof execution logic, you can define an explicit [[dependencies]] block.
Update your profile.toml to:
[request]
method = "GET"
url = "https://httpbin.org/headers"
[headers]
"Authorization" = "Bearer {{token}}"
[[dependencies]]
consumer_var = "token"
producer_id = "login" # login.toml -> you can refer to it as login
or
[request]
method = "GET"
url = "https://httpbin.org/headers"
[headers]
"Authorization" = "Bearer {{token}}"
[dependencies]
"./login.toml" = ["token"]
Let's run profile.toml individually again:
rumour run profile.toml -y
Expected Output:
~/workspace/testing/getting_started master* ❯ rumour run profile.toml -y
POST https://httpbin.org/post
✓ SUCCESS: /home/bugsfounder/workspace/testing/getting_started/login.toml (992ms)
GET https://httpbin.org/headers
Header: Authorization: Bearer mock-token-xyz
✓ SUCCESS: /home/bugsfounder/workspace/testing/getting_started/profile.toml (279ms)
✓ profile.toml → PASS (2 Pass, 0 Fail, 0 Skip)
╭──────────────────────────────────────────────────────────────────────────╮
│ RUMOUR EXECUTION REPORT │
├──────────────────────────────────────────────────────────────────────────┤
│ Total Requests: 2 │
│ Successful: 2 │
│ Failed: 0 │
│ Skipped: 0 │
│ Success Rate: 100.0% │
│ Total Time: 1275ms │
╰──────────────────────────────────────────────────────────────────────────╯
Actionable Recommendations:
→ Use -v -t to see detailed latency and response diagnostics.
→ Run with --json to export this report for your CI/CD pipeline.
Explicit Dependency Behavior
Configuring an explicit dependency ensures that Rumour knows exactly which file to execute first, guaranteeing 100% stable, deterministic behavior across large workspaces.
Use Environment Variables
Create an environment file named workspace.env.toml in your directory:
[variables]
base_url = "https://httpbin.org"
api_key = "your-api-key"
or
base_url = "https://httpbin.org"
api_key = "your-api-key"
Next, create the request file variable_test.toml that references these variables:
[request]
method = "GET"
url = "{{base_url}}/headers"
[headers]
"X-Api-Key" = "{{api_key}}"
Run the request and supply the environment configuration file using the -e flag:
rumour run variable_test.toml -y
or
rumour run variable_test.toml -e workspace.env.toml
Expected Output:
~/workspace/testing/getting_started master* ❯ rumour run variable_test.toml -y
⚠ Warning: Some variables are missing and will cause failures.
GET https://httpbin.org/headers
Header: X-Api-Key: your-api-key
✓ SUCCESS: /home/bugsfounder/workspace/testing/getting_started/variable_test.toml (1032ms)
✓ variable_test.toml → PASS (1 Pass, 0 Fail, 0 Skip)
╭──────────────────────────────────────────────────────────────────────────╮
│ RUMOUR EXECUTION REPORT │
├──────────────────────────────────────────────────────────────────────────┤
│ Total Requests: 1 │
│ Successful: 1 │
│ Failed: 0 │
│ Skipped: 0 │
│ Success Rate: 100.0% │
│ Total Time: 1033ms │
╰──────────────────────────────────────────────────────────────────────────╯
Actionable Recommendations:
→ Use -v -t to see detailed latency and response diagnostics.
→ Run with --json to export this report for your CI/CD pipeline.
Dynamic CLI Overrides
If you need to quickly override any of your environment variables at runtime without modifying the TOML file, you can supply dynamic variable overrides directly from the command line using the -V flag:
- The Standard Command (with explicit environment file):
rumour run variable_test.toml -e workspace.env.toml -V base_url=https://httpbin.org -V api_key=runtime-override-secret
Rumour will merge these overrides at runtime with top-priority precedence, ensuring highly flexible testing workflows!
Expected Output:
~/workspace/testing/getting_started master* ❯ rumour run variable_test.toml -e workspace.env.toml -V base_url=https://httpbin.org -V api_key=runtime-override-secret
GET https://httpbin.org/headers
Header: X-Api-Key: runtime-override-secret
✓ SUCCESS: /home/bugsfounder/workspace/testing/getting_started/variable_test.toml (981ms)
✓ variable_test.toml → PASS (1 Pass, 0 Fail, 0 Skip)
╭──────────────────────────────────────────────────────────────────────────╮
│ RUMOUR EXECUTION REPORT │
├──────────────────────────────────────────────────────────────────────────┤
│ Total Requests: 1 │
│ Successful: 1 │
│ Failed: 0 │
│ Skipped: 0 │
│ Success Rate: 100.0% │
│ Total Time: 982ms │
╰──────────────────────────────────────────────────────────────────────────╯
Actionable Recommendations:
→ Use -v -t to see detailed latency and response diagnostics.
→ Run with --json to export this report for your CI/CD pipeline.
- The Clean Command (leveraging Rumour's Workspace Auto-Discovery): Since workspace.env.toml is stored at the root of your workspace, Rumour automatically detects and loads it without requiring the -e flag! You can run:
rumour run variable_test.toml -V base_url=https://httpbin.org -V api_key=runtime-override-secret
Expected Output:
~/workspace/testing/getting_started master* ❯ rumour run variable_test.toml -V base_url=https://httpbin.org -V api_key=runtime-override-secret
GET https://httpbin.org/headers
Header: X-Api-Key: runtime-override-secret
✓ SUCCESS: /home/bugsfounder/workspace/testing/getting_started/variable_test.toml (1178ms)
✓ variable_test.toml → PASS (1 Pass, 0 Fail, 0 Skip)
╭──────────────────────────────────────────────────────────────────────────╮
│ RUMOUR EXECUTION REPORT │
├──────────────────────────────────────────────────────────────────────────┤
│ Total Requests: 1 │
│ Successful: 1 │
│ Failed: 0 │
│ Skipped: 0 │
│ Success Rate: 100.0% │
│ Total Time: 1180ms │
╰──────────────────────────────────────────────────────────────────────────╯
Actionable Recommendations:
→ Use -v -t to see detailed latency and response diagnostics.
→ Run with --json to export this report for your CI/CD pipeline.
Common Commands
Quiet Mode
Minimal output:
rumour run hello.toml -q
Output:
PASS hello.toml
or If execution failed
FAIL hello.toml
Verbose Mode
Detailed execution diagnostics:
rumour run ./getting_started/ -v
Expected output:
~/workspace/testing/getting_started master* ❯ rumour run . -v
GET https://httpbin.org/get
✓ SUCCESS: /home/bugsfounder/workspace/testing/getting_started/hello.toml (1016ms)
POST https://httpbin.org/post
✓ SUCCESS: /home/bugsfounder/workspace/testing/getting_started/login.toml (241ms)
GET https://httpbin.org/headers
Header: Authorization: Bearer mock-token-xyz
✓ SUCCESS: /home/bugsfounder/workspace/testing/getting_started/profile.toml (251ms)
GET https://httpbin.org/headers
Header: X-Api-Key: mock-token-xyz
✓ SUCCESS: /home/bugsfounder/workspace/testing/getting_started/variable_test.toml (242ms)
✓ . → PASS (4 Pass, 0 Fail, 0 Skip)
╭──────────────────────────────────────────────────────────────────────────╮
│ RUMOUR EXECUTION REPORT │
├──────────────────────────────────────────────────────────────────────────┤
│ Total Requests: 4 │
│ Successful: 4 │
│ Failed: 0 │
│ Skipped: 0 │
│ Success Rate: 100.0% │
│ Total Time: 1761ms │
╰──────────────────────────────────────────────────────────────────────────╯
✓ Successful Requests:
- /home/bugsfounder/workspace/testing/getting_started/hello.toml [200] [1018ms]
- /home/bugsfounder/workspace/testing/getting_started/login.toml [200] [244ms]
- /home/bugsfounder/workspace/testing/getting_started/profile.toml [200] [253ms]
- /home/bugsfounder/workspace/testing/getting_started/variable_test.toml [200] [244ms]
Actionable Recommendations:
→ Run with --json to export this report for your CI/CD pipeline.
Trace & Verbose Mode
Faliour trace will be shown in trace mode.
rumour run . -tv
~/workspace/testing/getting_started master* ❯ rumour run . -tv
GET https://httpbin.org/get
✓ SUCCESS: /home/bugsfounder/workspace/testing/getting_started/hello.toml (1022ms)
POST https://httpbin.org/post
✓ SUCCESS: /home/bugsfounder/workspace/testing/getting_started/login.toml (465ms)
GET https://httpbin.org/headers
Header: Authorization: Bearer mock-token-xyz
✓ SUCCESS: /home/bugsfounder/workspace/testing/getting_started/profile.toml (250ms)
GET https://httpbin.org/headers
Header: X-Api-Key: mock-token-xyz
✓ SUCCESS: /home/bugsfounder/workspace/testing/getting_started/variable_test.toml (907ms)
✓ . → PASS (4 Pass, 0 Fail, 0 Skip)
╭──────────────────────────────────────────────────────────────────────────╮
│ RUMOUR EXECUTION REPORT │
├──────────────────────────────────────────────────────────────────────────┤
│ Total Requests: 4 │
│ Successful: 4 │
│ Failed: 0 │
│ Skipped: 0 │
│ Success Rate: 100.0% │
│ Total Time: 2654ms │
╰──────────────────────────────────────────────────────────────────────────╯
✓ Successful Requests:
- /home/bugsfounder/workspace/testing/getting_started/hello.toml [200] [1024ms]
- /home/bugsfounder/workspace/testing/getting_started/login.toml [200] [466ms]
- /home/bugsfounder/workspace/testing/getting_started/profile.toml [200] [252ms]
- /home/bugsfounder/workspace/testing/getting_started/variable_test.toml [200] [910ms]
Actionable Recommendations:
→ Run with --json to export this report for your CI/CD pipeline.
Expected output when some error occur: in trace mode
~/workspace/testing/getting_started main ❯ rumour run . -tv
GET https://httpbin.org/json
✓ SUCCESS: /home/bugsfounder/workspace/testing/getting_started/assertion_test.toml (1016ms)
GET https://httpbin.org/getds
✗ FAILED: /home/bugsfounder/workspace/testing/getting_started/hello.toml (245ms) - HTTP Status: Expected status 200, got 404
↻ RETRYING: /home/bugsfounder/workspace/testing/getting_started/hello.toml (Attempt 1/2) [Wait 500ms]
GET https://httpbin.org/getds
✗ FAILED: /home/bugsfounder/workspace/testing/getting_started/hello.toml (248ms) - HTTP Status: Expected status 200, got 404
↻ RETRYING: /home/bugsfounder/workspace/testing/getting_started/hello.toml (Attempt 2/2) [Wait 1000ms]
GET https://httpbin.org/getds
✗ FAILED: /home/bugsfounder/workspace/testing/getting_started/hello.toml (246ms) - HTTP Status: Expected status 200, got 404
POST https://httpbin.org/post
✓ SUCCESS: /home/bugsfounder/workspace/testing/getting_started/login.toml (401ms)
GET https://httpbin.org/headers
Header: Authorization: Bearer mock-token-xyz
✓ SUCCESS: /home/bugsfounder/workspace/testing/getting_started/profile.toml (247ms)
GET https://httpbin.org/headers
Header: X-Api-Key: mock-token-xyz
✓ SUCCESS: /home/bugsfounder/workspace/testing/getting_started/variable_test.toml (310ms)
✗ . → FAIL (4 Pass, 1 Fail, 0 Skip)
╭──────────────────────────────────────────────────────────────────────────╮
│ RUMOUR EXECUTION REPORT │
├──────────────────────────────────────────────────────────────────────────┤
│ Total Requests: 5 │
│ Successful: 4 │
│ Failed: 1 │
│ Skipped: 0 │
│ Success Rate: 80.0% │
│ Total Time: 4230ms │
╰──────────────────────────────────────────────────────────────────────────╯
✓ Successful Requests:
- /home/bugsfounder/workspace/testing/getting_started/assertion_test.toml [200] [1017ms]
- /home/bugsfounder/workspace/testing/getting_started/login.toml [200] [403ms]
- /home/bugsfounder/workspace/testing/getting_started/profile.toml [200] [249ms]
- /home/bugsfounder/workspace/testing/getting_started/variable_test.toml [200] [312ms]
✗ Failed Requests:
- /home/bugsfounder/workspace/testing/getting_started/hello.toml: [404]
Reason: HTTP Status: Expected status 200, got 404
Message: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<title>404 Not Found</title>
<h1>Not Found</h1>
<p>The requested URL was not found on the server. If you entered the URL manually please check your spelling and try again.</p>
Actionable Recommendations:
→ Run with -H (Self-Healing) to attempt automatic recovery of failing nodes.
Parallel Execution
Run independent requests concurrently:
rumour run ./getting_started/ -p
Self-Healing
Enable soft recovery (automatic variable patching and interactive retries) from failures:
rumour run ./getting_started/ -H
Enable hard recovery (reconstructing missing resources on 404 Not Found by re-triggering upstream producer requests):
rumour run ./getting_started/ -X
Rich Response Assertions
Rumour supports declarative, robust assertions directly in your TOML files. You can assert on status codes, request durations, body contents, JSON paths, and headers.
Create a file named assertion_test.toml to test this out:
[request]
method = "GET"
url = "https://httpbin.org/json"
[assert]
# 1. Status Code & Ranges
status = 200 # Expect exact status code 200
status_range = "200-299" # OR assert status is within a range
# 2. Performance / Latency SLA
duration = 1500 # Expect request to complete in less than 1500ms
# 3. Raw Body Search
body_contains = "slideshow" # Expect the raw body text to contain this string
# 4. JSON Response Assertions (using JSON paths as keys)
[assert.json."slideshow.author"]
equal = "Yours Truly" # Expect exact field match
[assert.json."slideshow.slides"]
exists = true # Verify that a path/array exists in the response
# Slide [0] title contains "Wake up" (Wakes up to WonderWidgets!)
[assert.json."slideshow.slides.[0].title"]
contains = "Wake up" # Expect substring match inside JSON strings
# Slide [1] title contains "Overview"
[assert.json."slideshow.slides.[1].title"]
contains = "Overview"
# 5. Header Assertions (matched case-insensitively!)
[assert.headers."Content-Type"]
contains = "application/json" # Expect header value to contain 'application/json'
[assert.headers."Server"]
regex = "^gunicorn" # Validate headers with a regular expression
Run this file to see how Rumour evaluates your test conditions:
rumour run assertion_test.toml -v
Expected Output:
~/workspace/testing/getting_started master* ❯ rumour run assertion_test.toml -v
GET https://httpbin.org/json
✗ FAILED: /home/bugsfounder/workspace/testing/getting_started/assertion_test.toml (1548ms) - Performance SLA: Duration 1548ms exceeds limit of 1500ms
↻ RETRYING: /home/bugsfounder/workspace/testing/getting_started/assertion_test.toml (Attempt 1/2) [Wait 500ms]
GET https://httpbin.org/json
✓ SUCCESS: /home/bugsfounder/workspace/testing/getting_started/assertion_test.toml (230ms)
✓ assertion_test.toml → PASS (1 Pass, 0 Fail, 0 Skip)
╭──────────────────────────────────────────────────────────────────────────╮
│ RUMOUR EXECUTION REPORT │
├──────────────────────────────────────────────────────────────────────────┤
│ Total Requests: 1 │
│ Successful: 1 │
│ Failed: 0 │
│ Skipped: 0 │
│ Success Rate: 100.0% │
│ Total Time: 2283ms │
╰──────────────────────────────────────────────────────────────────────────╯
✓ Successful Requests:
- /home/bugsfounder/workspace/testing/getting_started/assertion_test.toml [200] [2283ms]
Actionable Recommendations:
→ Run with --json to export this report for your CI/CD pipeline.
Suite
A Suite in Rumour allows you to organize multiple test files, directories of requests, and even nested suites into a unified execution plan. Suites support shared suite-level variables and automatic topological scheduling.
Create a file named getting_started.suite.toml to group your request workflows:
[suite]
name = "Core API Workflows & Assertions Suite"
description = "Executes the main suite verifying authorization tokens, profile lookups, and rich response assertions."
ordered = true # Run sequentially in the defined order
requests = [
"../getting_started/login.toml",
"../getting_started/profile.toml",
"../getting_started/assertion_test.toml",
"../getting_started/variable_test.toml",
]
[variables]
base_url = "https://httpbin.org"
api_key = "suite-level-token-override"
rumour run getting_started.suite.toml -y
~/workspace/testing/test_suites master* ❯ rumour run getting_started.suite.toml -y
POST https://httpbin.org/post
✓ SUCCESS: /home/bugsfounder/workspace/testing/getting_started/login.toml (1024ms)
GET https://httpbin.org/headers
Header: Authorization: Bearer mock-token-xyz
✓ SUCCESS: /home/bugsfounder/workspace/testing/getting_started/profile.toml (318ms)
GET https://httpbin.org/json
✓ SUCCESS: /home/bugsfounder/workspace/testing/getting_started/assertion_test.toml (251ms)
GET https://httpbin.org/headers
Header: X-Api-Key: mock-token-xyz
✓ SUCCESS: /home/bugsfounder/workspace/testing/getting_started/variable_test.toml (241ms)
✓ getting_started.suite.toml → PASS (4 Pass, 0 Fail, 0 Skip)
╭──────────────────────────────────────────────────────────────────────────╮
│ RUMOUR EXECUTION REPORT │
├──────────────────────────────────────────────────────────────────────────┤
│ Total Requests: 4 │
│ Successful: 4 │
│ Failed: 0 │
│ Skipped: 0 │
│ Success Rate: 100.0% │
│ Total Time: 1843ms │
╰──────────────────────────────────────────────────────────────────────────╯
Actionable Recommendations:
→ Use -v -t to see detailed latency and response diagnostics.
→ Run with --json to export this report for your CI/CD pipeline.
Suite Options Reference
| Option | Type | Description |
|---|---|---|
name | String (Required) | The human-readable name of the suite shown in execution reports. |
description | String (Optional) | Detailed summary explaining what the suite validates. |
ordered | Boolean (Default: true) | Ensures requests execute sequentially. |
requests | Array of Strings | List of file paths, directories, or nested suites (.suite.toml) to execute. |
variables | Map (Optional) | Suite-level variables that are injected and shared across all request nodes. |
- Auto-Discovery: When you specify a directory (e.g.,
requests = ["../getting_started/"]), Rumour automatically scans the folder recursively, discovers all.tomlfiles, and sorts them alphabetically. - Automatic Deduplication: If a request is listed multiple times (for example, once individually and once as part of a directory), Rumour automatically deduplicates it. The file is parsed only once and executed exactly once.
- Dependency Resolution Guard: The scheduler automatically verifies that the execution sequence matches your variable dependency flows, preventing conflicts and ensuring successful, non-blocking execution.
Next Steps
Now that you know the basics of Rumour, keep exploring:
- Learn all Commands
- Explore Self-Healing
- Understand Variable Resolution
- Read the TOML Reference