Skip to content

Latest commit

 

History

History
124 lines (88 loc) · 3.59 KB

File metadata and controls

124 lines (88 loc) · 3.59 KB
 ██████╗██╗  ██╗ █████╗ ██╗  ██╗██╗      ██████╗  █████╗ ██████╗ 
██╔════╝██║  ██║██╔══██╗██║ ██╔╝██║     ██╔═══██╗██╔══██╗██╔══██╗
██║     ███████║███████║█████╔╝ ██║     ██║   ██║███████║██║  ██║
██║     ██╔══██║██╔══██║██╔═██╗ ██║     ██║   ██║██╔══██║██║  ██║
╚██████╗██║  ██║██║  ██║██║  ██╗███████╗╚██████╔╝██║  ██║██████╔╝
 ╚═════╝╚═╝  ╚═╝╚═╝  ╚═╝╚═╝  ╚═╝╚══════╝ ╚═════╝ ╚═╝  ╚═╝╚═════╝ 

Comprehensive CLI tool for load testing web applications and Telegram bots with support for multiple frameworks (Locust, K6, Artillery, JMeter).

Features

  • Interactive terminal interface with color themes
  • Multiple load testing frameworks support
  • Built-in templates for common test scenarios
  • Real-time progress tracking
  • Detailed metrics and reporting
  • Command-based operation with / commands

Installation

https://pypi.org/project/chakload-cli/1.0.0/

pip install chakload-cli==1.0.0

Or using pipx:

pipx install chakload-cli

After installation, run the tool using:

chakload

External Dependencies

Some advanced frameworks require separate installation:

K6:

Locust:

  • Install via pip: pip install locust

JMeter:

Artillery:

  • Install via npm: npm install -g artillery

The built-in frameworks (simple, advanced) are included by default and require no additional installation.

Quick Start

Run the interactive CLI:

chakload

In the interactive mode, you can use commands like:

  • /framework locust - Select Locust as the testing framework
  • /type web-site - Select the type of test
  • /url https://example.com - Set the target URL
  • /users 100 - Set the number of concurrent users
  • /run - Start the load test

Command Reference

  • /help - Show available commands
  • /framework <name> - Select framework (locust, k6, artillery, jmeter)
  • /type <test-type> - Select test type (web-site, telegram-webhook, api-endpoint)
  • /config - Show current configuration
  • /run - Execute the test
  • /results - Show test results
  • /export <format> - Export results (json, csv, html)
  • /theme <name> - Change color theme
  • /exit - Exit the CLI

Supported Test Types

  • Web site testing (HTTP/HTTPS)
  • Telegram bot webhook testing
  • API endpoint testing
  • GraphQL endpoint testing
  • WebSocket connection testing

Supported Frameworks

  • Simple HTTP (Built-in, using requests library)
  • More frameworks coming soon (Locust, K6, Artillery, JMeter)

Configuration

Save and load configuration presets:

# Save current configuration
/config save my-test-config

# Load a saved configuration
/config load my-test-config

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Add tests if applicable
  5. Submit a pull request

License

This project is licensed under the MIT License.