133 lines
6.6 KiB
Markdown
133 lines
6.6 KiB
Markdown
# 5 PC Load Test Commands - Complete Distribution
|
||
|
||
## 🎯 Overview
|
||
|
||
All 3 CSVs have 100 students each (300 total). Distributed across 5 PCs:
|
||
- **Each PC**: 20 students from CSV 1 + 20 from CSV 2 + 20 from CSV 3 = **60 students per PC**
|
||
- **Total**: 300 students across 5 PCs
|
||
- **Concurrent browsers**: 30 per PC (10 per CSV batch) = **150 total browsers**
|
||
|
||
---
|
||
|
||
## 📊 Distribution Plan
|
||
|
||
| PC | CSV 1 | CSV 2 | CSV 3 | Total Students | Workers |
|
||
|----|-------|-------|-------|----------------|---------|
|
||
| PC 1 | 0-19 (20) | 0-19 (20) | 0-19 (20) | 60 | 30 (10×3) |
|
||
| PC 2 | 20-39 (20) | 20-39 (20) | 20-39 (20) | 60 | 30 (10×3) |
|
||
| PC 3 | 40-59 (20) | 40-59 (20) | 40-59 (20) | 60 | 30 (10×3) |
|
||
| PC 4 | 60-79 (20) | 60-79 (20) | 60-79 (20) | 60 | 30 (10×3) |
|
||
| PC 5 | 80-99 (20) | 80-99 (20) | 80-99 (20) | 60 | 30 (10×3) |
|
||
| **Total** | **100** | **100** | **100** | **300** | **150** |
|
||
|
||
---
|
||
|
||
## 🚀 Complete Commands (Copy-Paste Ready)
|
||
|
||
### **PC 1 - 60 Students (20 from each CSV)**
|
||
```bash
|
||
cd /home/tech4biz/work/CP_Front_Automation_Test && source venv/bin/activate && python3 tests/load_tests/test_generic_load_assessments.py --csv students_with_passwords_2025-12-15T10-49-08_01.csv --start 0 --end 20 --workers 10 --headless --metrics-interval 5 & python3 tests/load_tests/test_generic_load_assessments.py --csv students_with_passwords_2025-12-15T10-59-02_03.csv --start 0 --end 20 --workers 10 --headless --metrics-interval 5 & python3 tests/load_tests/test_generic_load_assessments.py --csv students_with_passwords_2025-12-15T11-06-37_05.csv --start 0 --end 20 --workers 10 --headless --metrics-interval 5 & wait
|
||
```
|
||
|
||
### **PC 2 - 60 Students (20 from each CSV)**
|
||
```bash
|
||
cd /home/tech4biz/work/CP_Front_Automation_Test && source venv/bin/activate && python3 tests/load_tests/test_generic_load_assessments.py --csv students_with_passwords_2025-12-15T10-49-08_01.csv --start 20 --end 40 --workers 10 --headless --metrics-interval 5 & python3 tests/load_tests/test_generic_load_assessments.py --csv students_with_passwords_2025-12-15T10-59-02_03.csv --start 20 --end 40 --workers 10 --headless --metrics-interval 5 & python3 tests/load_tests/test_generic_load_assessments.py --csv students_with_passwords_2025-12-15T11-06-37_05.csv --start 20 --end 40 --workers 10 --headless --metrics-interval 5 & wait
|
||
```
|
||
|
||
### **PC 3 - 60 Students (20 from each CSV)**
|
||
```bash
|
||
cd /home/tech4biz/work/CP_Front_Automation_Test && source venv/bin/activate && python3 tests/load_tests/test_generic_load_assessments.py --csv students_with_passwords_2025-12-15T10-49-08_01.csv --start 40 --end 60 --workers 10 --headless --metrics-interval 5 & python3 tests/load_tests/test_generic_load_assessments.py --csv students_with_passwords_2025-12-15T10-59-02_03.csv --start 40 --end 60 --workers 10 --headless --metrics-interval 5 & python3 tests/load_tests/test_generic_load_assessments.py --csv students_with_passwords_2025-12-15T11-06-37_05.csv --start 40 --end 60 --workers 10 --headless --metrics-interval 5 & wait
|
||
```
|
||
|
||
### **PC 4 - 60 Students (20 from each CSV)**
|
||
```bash
|
||
cd /home/tech4biz/work/CP_Front_Automation_Test && source venv/bin/activate && python3 tests/load_tests/test_generic_load_assessments.py --csv students_with_passwords_2025-12-15T10-49-08_01.csv --start 60 --end 80 --workers 10 --headless --metrics-interval 5 & python3 tests/load_tests/test_generic_load_assessments.py --csv students_with_passwords_2025-12-15T10-59-02_03.csv --start 60 --end 80 --workers 10 --headless --metrics-interval 5 & python3 tests/load_tests/test_generic_load_assessments.py --csv students_with_passwords_2025-12-15T11-06-37_05.csv --start 60 --end 80 --workers 10 --headless --metrics-interval 5 & wait
|
||
```
|
||
|
||
### **PC 5 - 60 Students (20 from each CSV)**
|
||
```bash
|
||
cd /home/tech4biz/work/CP_Front_Automation_Test && source venv/bin/activate && python3 tests/load_tests/test_generic_load_assessments.py --csv students_with_passwords_2025-12-15T10-49-08_01.csv --start 80 --end 100 --workers 10 --headless --metrics-interval 5 & python3 tests/load_tests/test_generic_load_assessments.py --csv students_with_passwords_2025-12-15T10-59-02_03.csv --start 80 --end 100 --workers 10 --headless --metrics-interval 5 & python3 tests/load_tests/test_generic_load_assessments.py --csv students_with_passwords_2025-12-15T11-06-37_05.csv --start 80 --end 100 --workers 10 --headless --metrics-interval 5 & wait
|
||
```
|
||
|
||
---
|
||
|
||
## 📝 Using Shell Scripts (Recommended)
|
||
|
||
### **On PC 1:**
|
||
```bash
|
||
chmod +x scripts/PC1_60_students.sh
|
||
./scripts/PC1_60_students.sh
|
||
```
|
||
|
||
### **On PC 2:**
|
||
```bash
|
||
chmod +x scripts/PC2_60_students.sh
|
||
./scripts/PC2_60_students.sh
|
||
```
|
||
|
||
### **On PC 3:**
|
||
```bash
|
||
chmod +x scripts/PC3_60_students.sh
|
||
./scripts/PC3_60_students.sh
|
||
```
|
||
|
||
### **On PC 4:**
|
||
```bash
|
||
chmod +x scripts/PC4_60_students.sh
|
||
./scripts/PC4_60_students.sh
|
||
```
|
||
|
||
### **On PC 5:**
|
||
```bash
|
||
chmod +x scripts/PC5_60_students.sh
|
||
./scripts/PC5_60_students.sh
|
||
```
|
||
|
||
---
|
||
|
||
## 🌐 With Custom URL
|
||
|
||
Add `--url` to each command in the script, or modify the shell scripts:
|
||
|
||
**Example for PC 1 with custom URL:**
|
||
```bash
|
||
cd /home/tech4biz/work/CP_Front_Automation_Test && source venv/bin/activate && python3 tests/load_tests/test_generic_load_assessments.py --csv students_with_passwords_2025-12-15T10-49-08_01.csv --start 0 --end 20 --workers 10 --headless --metrics-interval 5 --url http://localhost:3983 & python3 tests/load_tests/test_generic_load_assessments.py --csv students_with_passwords_2025-12-15T10-59-02_03.csv --start 0 --end 20 --workers 10 --headless --metrics-interval 5 --url http://localhost:3983 & python3 tests/load_tests/test_generic_load_assessments.py --csv students_with_passwords_2025-12-15T11-06-37_05.csv --start 0 --end 20 --workers 10 --headless --metrics-interval 5 --url http://localhost:3983 & wait
|
||
```
|
||
|
||
---
|
||
|
||
## 📊 Summary
|
||
|
||
- **Total Students**: 300 (100 from each CSV)
|
||
- **Total PCs**: 5
|
||
- **Students per PC**: 60 (20 from each CSV)
|
||
- **Concurrent Browsers per PC**: 30 (10 per CSV batch)
|
||
- **Total Concurrent Browsers**: 150
|
||
- **Distribution**: Evenly distributed across all CSVs and PCs
|
||
|
||
---
|
||
|
||
## 🚀 Execution Steps
|
||
|
||
1. **On PC 1**: Run PC 1 command/script
|
||
2. **On PC 2**: Run PC 2 command/script
|
||
3. **On PC 3**: Run PC 3 command/script
|
||
4. **On PC 4**: Run PC 4 command/script
|
||
5. **On PC 5**: Run PC 5 command/script
|
||
6. **Monitor**: Each PC will run 3 parallel processes (one per CSV)
|
||
|
||
---
|
||
|
||
## 💡 Notes
|
||
|
||
- Each PC runs **3 parallel processes** (one for each CSV)
|
||
- Each process handles **20 students** with **10 workers**
|
||
- All processes run in **background** and wait for completion
|
||
- **Metrics** printed every 5 students per process
|
||
- **Reports** saved separately for each CSV batch
|
||
|
||
---
|
||
|
||
**Status**: ✅ Ready to Execute - 300 Students Across 5 PCs
|
||
|