Skip to content

About

robot pythonto test request

Topics

Resources

Security policy

Stars

3 stars

Watchers

1 watching

Forks

Latest commit

 

History

5 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 

Repository files navigation

تست استرس سرور (Server Stress Test)

ابزاری برای تست استرس و سنجش عملکرد سرور با Python. این اسکریپت با ارسال درخواست‌های همزمان در دسته‌های مختلف، آمار دقیق و گزارش کامل JSON از رفتار سرور تولید می‌کند.

ویژگی‌ها

  • ارسال درخواست‌های همزمان در ۴ دسته: ۱۰۰، ۲۰۰، ۵۰۰ و ۱۰۰۰ درخواست (مجموعاً ۱۸۰۰ درخواست)
  • اجرای غیرهمزمان (Async) با aiohttp و asyncio
  • گزارش‌دهی کامل در قالب JSON (ذخیره در پوشه reports/ با نام stress_test_report_<تاریخ>_<ساعت>.json)
  • محاسبه میانگین زمان پاسخ‌دهی و پرسنتایل‌های p50، p90، p95 و p99
  • تحلیل کدهای وضعیت HTTP و خطاهای اتصال
  • نمایش خلاصه نتایج هر دسته در ترمینال پس از پایان تست

پیش‌نیازها

  • Python 3.7 یا بالاتر
  • کتابخانه aiohttp

نصب

۱. کلون کردن مخزن

git clone https://github.com/movtigroup/robot-test-request.git
cd robot-test-request

۲. نصب وابستگی‌ها

pip install aiohttp

تنظیمات

قبل از اجرا، آدرس سرور هدف را در فایل app/robat.py و در متغیر url وارد کنید:

url = 'https://example.com'

در صورت تمایل می‌توانید تعداد درخواست‌های هر دسته را نیز در متغیر batch_sizes تغییر دهید:

batch_sizes = [100, 200, 500, 1000]

نحوه اجرا

cd app
python robat.py

اسکریپت دسته‌ها را به ترتیب اجرا می‌کند و در پایان، خلاصه نتایج را در ترمینال نمایش داده و گزارش کامل را در فایل JSON ذخیره می‌کند.

خروجی

گزارش JSON تولیدشده شامل بخش‌های زیر است:

بخش توضیح
test_configuration تنظیمات تست (اندازه دسته‌ها و تعداد کل درخواست‌ها)
batch_results نتایج کامل هر دسته: وضعیت، زمان پاسخ، حجم پاسخ و هدرها
overall_statistics آمار کلی: تعداد موفق/ناموفق، نرخ موفقیت و مدت کل تست
response_time_percentiles پرسنتایل‌های p50، p90، p95 و p99 زمان پاسخ

ساختار پروژه

robot-test-request/
├── app/
│   └── robat.py      # اسکریپت اصلی تست استرس
├── README.md
└── SECURITY.md

⚠️ سلب مسئولیت

این ابزار صرفاً برای تست بار روی سرورهایی است که مالک آن‌ها هستید یا مجوز رسمی تست دارید. استفاده از این ابزار علیه سرورهای دیگران بدون اجازه، خلاف قانون است و مسئولیت آن کاملاً بر عهده کاربر می‌باشد.

About

robot pythonto test request

Topics

Resources

Security policy

Stars

3 stars

Watchers

1 watching

Forks

Releases

Sponsor this project

Packages

Used by

Contributors

Languages