2025-11-30 23:52:21 +11:00

Beyond Cloud Technology - Website Stress Test

Website Stress Test Dashboard

🌐 Public Access

Live URL: https://website-stress-test.beyondcloud.technology/


🚀 Overview

The Website Stress Test is a professional-grade load testing tool designed to simulate realistic traffic patterns on your web applications. It helps developers and QA engineers identify bottlenecks, test scalability, and ensure production readiness.

Built with a modern, high-performance architecture, it includes a custom NodeJS proxy server to bypass CORS restrictions and allow testing of any target URL.

Key Features

🛠️ Core Functionality

  • Custom HTTP Methods: Support for GET, POST, PUT, DELETE, and PATCH.
  • Configurable Load: Adjust concurrent users (up to 5000) and test duration.
  • Traffic Patterns:
    • Steady: Constant load.
    • Burst: Sudden spikes to test resilience.
    • Ramp-up: Gradual increase to find breaking points.
    • Random: Simulate unpredictable real-world traffic.
  • Crawler Mode: Automatically crawls the target website to test multiple pages and paths, not just the entry point.

📊 Real-Time Analytics

  • Interactive Charts: Live visualization of Requests Per Second (RPS) and Response Times.
  • Detailed Metrics: Track Active Users, Bandwidth, Success Rates, and Error breakdown (4xx, 5xx, Timeouts).
  • Percentiles: Monitor P50, P95, and P99 latency metrics.

🎨 User Experience

  • Modern UI: Sleek, glassmorphism-inspired design with Light/Dark mode support.
  • Git Versioning: Automatic display of the current Git Commit ID and deployment age in the UI.
  • Responsive Design: Fully functional on desktop and tablet devices.

📦 Installation & Setup

Prerequisites

  • Node.js (v18 or higher)
  • Nginx (for production deployment)
  • PM2 (for process management)

💻 Local Development

  1. Clone the Repository

    git clone https://github.com/DeNNiiInc/Website-Stress-Test.git
    cd Website-Stress-Test
    
  2. Install Dependencies

    npm install
    
  3. Start the Proxy Server

    npm start
    

    The server will start on http://localhost:3000.

  4. Open the Application Open index.html in your browser or serve it using a static file server (e.g., Live Server).


🚀 Deployment Guide (Proxmox / Ubuntu)

This project includes automated deployment scripts for Proxmox/Ubuntu environments.

1. Configuration

Copy deploy-config.example.json to deploy-config.json and update with your server details:

{
  "host": "YOUR_SERVER_IP",
  "username": "root",
  "password": "YOUR_PASSWORD",
  "remotePath": "/var/www/website-stress-test",
  "repoUrl": "https://github.com/DeNNiiInc/Website-Stress-Test.git",
  "githubToken": "YOUR_GITHUB_TOKEN",
  "appName": "website-stress-test"
}

2. Auto-Deployment

Run the PowerShell deployment script:

./start-deployment.ps1

This script will:

  • Connect to your server via SSH.
  • Install Nginx and Node.js if missing.
  • Clone/Pull the latest code.
  • Configure Nginx as a reverse proxy.
  • Set up a Cron job for auto-updates.

3. Auto-Sync

The system automatically checks for Git updates every 5 minutes. If changes are detected, it pulls the code, installs dependencies, and restarts the backend process without downtime.

Manual Update Trigger:

/var/www/website-stress-test/auto-sync.sh

🔧 Architecture

Backend (proxy-server.js)

  • Role: Handles CORS requests and authenticates traffic.
  • Port: 3000 (Internal).
  • Endpoints:
    • /proxy: Forwards stress test requests.
    • /git-info: Returns current commit hash and deployment date.

Frontend (index.html + script.js)

  • Technology: Vanilla JS + Chart.js.
  • Communication: Fetch API to the Proxy Server.

📝 License

MIT License - Copyright (c) 2025 Beyond Cloud Technology.

Description
No description provided
Readme GPL-3.0 1.5 MiB
Languages
JavaScript 56.1%
CSS 20.7%
HTML 17.1%
Shell 3.9%
PowerShell 2.2%