- PowerShell 71.5%
- Shell 28.5%
| 1. praktikum | ||
| 2. praktikum | ||
| 3. praktikum | ||
| 4. praktikum | ||
| 5. praktikum | ||
| 6. praktikum | ||
| LICENSE | ||
| README.md | ||
Skriptimise Alused Testimises - Praktikumid
Selles repositooriumis on kuus praktikumi, mis käsitlevad skriptimise rolli ja tähtsust süsteemide testimisel.
Praktikumide ülevaade
I. Praktikum - Skriptimise alused testimises
Teema: Skriptimise roll ja tähtsus süsteemide testimisel
Ülesanne: Koosta lihtne skript, mis kontrollib teenuse olemasolu ja töökorras olekut
Skriptid:
apache_check.sh- Bash skript Apache2 kontrollimiseks (Linux)apache_check.ps1- PowerShell skript veebiserveri kontrollimiseks (Windows)
II. Praktikum - Testjuhtumite automatiseerimine
Teema: Testjuhtumite loomine ja automatiseeritud täitmine skriptidega
Ülesanne: Kirjuta skript, mis automaatselt testib vähemalt kolme tingimust
Skript:
apache_test_automation.sh- Põhjalik automaatse testimise skript Apache2 jaoks
Testide kategooriad:
- Failide olemasolu kontroll
- Teenuse tööseisundi kontroll
- Kasutajapõhiste õiguste kontroll
III. Praktikum - Süsteemide tervisekontroll ja logimine
Teema: Süsteemide ja teenuste tervisekontrolli automatiseerimine
Ülesanne: Loo skript, mis kogub süsteemi infot ja salvestab tulemused logifaili
Skript:
system_health_monitor.ps1- PowerShell skript süsteemi monitoorimiseks
Monitooritavad mõõdikud:
- CPU koormus
- Mälu kasutus
- Kettaruum
- Süsteemi üldinfo
- Teenuste olek
IV. Praktikum - Vigade tuvastamine ja automaatne raporteerimine
Teema: Vigade ja anomaaliate automaatne avastamine ning raporteerimine
Ülesanne: Arenda skript, mis avastab VM-i kõvaketta üle 70% täis ja saadab tulemused e-kirjaga
Skriptid:
disk_monitor_alert.sh- Bash skript kõvaketta monitoorimiseks (Linux)disk_monitor_alert.ps1- PowerShell skript kõvaketta monitoorimiseks (Windows)
Funktsioonid:
- Kõvaketta kasutuse kontroll
- HTML e-kirja hoiatuste saatmine
- Automaatne spämmi vältimine
- SMTP autentimine
- Detailne logimine
V. Praktikum - Skriptide ajastamine ja perioodiline testimine
Teema: Skriptide ajastamine cron'i, Task Scheduler'i või muude tööriistade abil
Ülesanne: Seadista eelnevalt loodud testimisskript automaatselt käivituma määratud ajaintervalliga
Skriptid:
schedule_tests.sh- Bash skript cron'i ajastamiseks (Linux)schedule_tests.ps1- PowerShell skript Task Scheduler'i ajastamiseks (Windows)
Funktsioonid:
- Automaatne ajastuste loomine
- Eelseadistatud ja kohandatud ajastused
- Crontab/Task Scheduler haldamine
- Interaktiivne režiim
- Varundamine ja taastamine
VI. Praktikum - Automaatne testimis- ja aruandlussüsteem
Teema: Kõikide varasemate praktikumide ühendamine terviklikuks automaatseks süsteemiks
Ülesanne: Loo skript, mis ühendab kõik varasemates ülesannetes loodud skriptid ja protsessid, moodustades automaatse süsteemi testimise ja aruandluse lahenduse
Skriptid:
AutomaatneTestimisAruandlus.ps1- Peamine PowerShell skript automaatseks testimiseksSeadista.ps1- Kiire seadistamise skriptTestSkripti.ps1- Interaktiivne testimise skript
Funktsioonid:
- Teenuste seisundi kontrollimine
- Süsteemiressursside monitooring (CPU, RAM, kettaruum)
- Võrguühenduse testimine
- Süsteemilogide analüüs
- Automaatne aruandluse genereerimine (CSV, TXT, LOG)
- HTML e-posti teavitused (UTF-8 tugi eesti keele märkidele)
- Windows Task Scheduler integratsioon
- Kohandatavad parameetrid ja seaded
Tehnoloogiad
Bash (Linux/Unix)
- Apache2 teenuse kontroll
- Automaatne testimine
- Failide ja õiguste kontroll
- Värviline väljund
PowerShell (Windows)
- IIS/veebiserveri kontroll
- Süsteemi monitooring
- CSV ja tekstilogid
- Hoiatuste süsteem
Kasutamine
Linux (Bash skriptid):
# Tee skriptid käivitatavaks
chmod +x *.sh
# Käivita skriptid
./apache_check.sh
sudo ./apache_test_automation.sh
Windows (PowerShell skriptid):
# Luba skriptide käivitamine
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
# Käivita skriptid
.\apache_check.ps1
.\system_health_monitor.ps1 -DetailedOutput
Eeldused
Linux süsteemid:
- Ubuntu/Debian (soovitatud)
- Apache2 installitud
- Bash 4.0+
- Standardsed süsteemi tööriistad (systemctl, netstat, stat)
Windows süsteemid:
- Windows 10/11 või Windows Server
- PowerShell 5.1+ (nõutav), soovitatud 7.0+
- IIS või muu veebiserver (valikuline)
- Administraatori õigused (soovitatud)
Funktsioonid
Ühised omadused:
- ✅ Värviline väljund
- ✅ Detailne logimine
- ✅ Veakäsitlus
- ✅ Konfigureeritavad parameetrid
- ✅ Dokumenteeritud kood
- ✅ Automaatne paigaldamine ja parandamine (kasutaja loaga)
Bash skriptide eripärad:
- Süsteemi teenuste kontroll
- Failide ja õiguste valideerimine
- HTTP vastuste testimine
- Testitulemuste statistika
PowerShell skriptide eripärad:
- WMI/CIM andmete kogumine
- CSV eksport
- Pidevkontrolli režiim
- Automaatne failide haldus
Struktuuri ülevaade
testimine1/
├── 1. praktikum/
│ ├── apache_check.sh
│ ├── apache_check.ps1
│ └── README.md
├── 2. praktikum/
│ ├── apache_test_automation.sh
│ └── README.md
├── 3. praktikum/
│ ├── system_health_monitor.ps1
│ └── README.md
├── 4. praktikum/
│ ├── disk_monitor_alert.sh
│ ├── disk_monitor_alert.ps1
│ └── README.md
├── 5. praktikum/
│ ├── schedule_tests.sh
│ ├── schedule_tests.ps1
│ └── README.md
├── 6. praktikum/
│ ├── AutomaatneTestimisAruandlus.ps1
│ ├── Seadista.ps1
│ ├── TestSkripti.ps1
│ ├── README.md
│ └── ALUSTAMINE.md
├── README.md
└── LICENSE
Õpieesmärgid
Nende praktikumide läbimise järel oskate:
- Luua põhilisi testimisskripte erinevates keskkonnas
- Automatiseerida testjuhtumeid ja analüüsida tulemusi
- Monitoorida süsteemide tervist ja logida andmeid
- Tuvastada vigu automaatselt ja saata hoiatusi e-kirjaga
- Ajastada skripte automaatseks käivitamiseks
- Ühendada kõik funktsioonid terviklikuks süsteemiks
- Kasutada mõlemat peamist skriptimiskeelt (Bash ja PowerShell)
- Rakendada parimaid praktikaid skriptimises ja testimises
- Luua professionaalseid HTML e-posti teavitusi
- Seadistada automaatseid monitooringu süsteeme
Kasulikud viited
Bash ressursid:
- Bash Manual
- ShellCheck - Bash skriptide analüüs
- Apache2 dokumentatsioon
PowerShell ressursid:
Litsents
See projekt on litsentseeritud MIT litsentsi alusel - vaadake LICENSE faili detailide jaoks.
Autorid
- Kirlis
- Kuupäev: 2025-Mai
Automaatne paigaldamine ja parandamine
Kõik skriptid sisaldavad nüüd automaatse paigaldamise ja parandamise funktsioone:
Funktsioonid:
- Automaatne tarkvara installimine (Apache2, IIS)
- Teenuste automaatne käivitamine ja seadistamine
- Failide ja õiguste automaatne parandamine
- Süsteemi jõudluse optimeerimine (ainult 3. praktikumis)
Kasutamine:
Skriptid küsivad alati kasutajalt luba enne automaatse paranduse tegemist:
⚠ Probleem tuvastatud: Apache2 ei ole installitud
Kas soovite automaatselt parandada? (j/N):
Eelised:
- Kiire probleemide lahendamine - ei pea käsitsi paigaldama
- Õppimise toetus - näitab, kuidas probleeme lahendada
- Turvaline - kasutaja kontrollib kõiki toiminguid
- Logimine - kõik toimingud dokumenteeritakse
Märkused
- Kõik skriptid on testitud vastavates keskkonnas
- Soovitame alustada esimesest praktikumist
- Iga praktikum ehitab eelmise peale
- VI. praktikum ühendab kõik varasemate praktikumide funktsioonid
- Skriptid sisaldavad ohutuskontrolle ja veakäsitlust
- Automaatne paigaldamine vajab administraatori õigusi
- Kasutaja saab alati keelduda automaatsest parandamisest
- VI. praktikumi skriptid toetavad täielikult eesti keelt (UTF-8)