2. Web našumo testavimo
veikimo principas
Našumo testavimo tipai:
performance, load, stress ir
t.t.
Procesas: reikalavimai,
vykdymas, ataskaita
2
Klausimai
4. Kodėl testuoti našumą?
Našumo kriterijų atitikimas
Aptikti silpniausias sistemos vietas
Rasti problemas aptinkamas tik prie didelių
apkrovų
Rasti optimalią konfigūraciją
Pamatuoti plėtimo galimybės
Kita
4
13. 13
Capacity/scalability testavimas
Generuojama apkrova:
– Didėjanti
Dažniausiai matuojama
– Atsako laikas, resursų
panaudojimas
– Kokią apkrovą sistema
gali atlaikyti ir vis dar
pasiekti reikiamus
rodiklius
– Padeda nuspręsti ar
reikia padidinti/sumažinti
sistemos resursus
14. 14
Configuration testavimas
Generuojama apkrova:
– Kintanti
– Keičiami sistemos
nustatymai (DB, HTTP
serverio, cache ir pan.)
Dažniausiai matuojama
– Atsako laikas, resursų
panaudojimas
– Ieškoma geriausiai
tinkančios konfigūracijos
17. Komponentų testavimas
17
• Kada naudingas komponentų
testavimas?
– Patogu stebėti komponento
našumo kitimą laike
– Galima palyginti su
konkurentais/analogiškais
komponentais
– Patogu naudoti kai sudėtinga
sugeneruoti dideles realiais
apkrovas
19. 19
Reikalavimai
• „Sistema turi
užtikrinti spartų
vartotojų darbą“
• „Reikia ištestuoti
našumą“
• „Visi puslapiai turi
užsikrauti greičiau nei
per 2 sekundes“
• Kas yra „spartus“?
Kiek vartotojų? Ką jie
sistemoje veikia?
• Kokie yra sėkmingo ir
nesėkmingo našumo
testo kriterijai?
• Jau geriau...
20. 20
Baziniai
reikalavimai• Vartotojų skaičius
– Įprastinis, pikinis
• Dažniausiai
naudojamos funkcijos
• Atsako laikas
– Vidutinis arba
procentinis (90%,
95%, 99%)
• Kritinės funkcijos
• Papildomi
reikalavimai
– Spike
– Capacity
– Stress
Papildomai
22. Artimi realiems scenarijai
• Skirtingi vartotojų
prisijungimai
• Think time
• Skirtingi vartotojų
tipai/profiliai
• Kiek įmanoma dinamiški
scenarijai
– Skirtingi produktai, skirtingi
paieškos kriterijai ir pan.
22
23. Artimi realiems scenarijai
• Konsultuotis su
sistemos ekspertais
• Fokusuotis į
pagrindines funkcijas
• Pakankama testo
vykdymo trukmė
23
24. Infrastruktūra: Išorinės sistemos
• Nenaudoti jeigu įmanoma
– Pakeisti fake‘ais
• Riboti scenarijus,
nenaudoti duomenų
analizei
• Planuoti papildomą
rezultatų skaičiavimą
24
25. Infrastruktūra: Hardware resursai
• Resursai apkrovai sugeneruoti
– Gali prireikti ne vienos mašinos
• Resursai aplinkos kurioje aliekami
testai
– Artimi gamybinei aplinkai
25
27. Ataskaita
• Kam skirta?
– Vidinė
– Kliento tech. personalui
– Kliento verslo personalui
– Konkrečiam sprendimui
priimti
27
28. Ataskaita
• Kas turėtų būti
ataskaitoje?
– Našumo reikalavimai
– Testavimo aplinkos
parametrai, naudojami
įrankiai
– Prielaidos ir apribojimai
– Scenarijai ir rezultatai
– Išvados, rekomendacijos
– Grafinė informacija
28
33. Kada testuoti našumą?
• Kai sistema yra artima gamybinei versijai
– Projekto/release pabaigoje
• Gali būti per vėlu
– Pataisymai ilgai užtruks
– Pataisymai įtakos visą sistemą
– Reikės daug regresinio testavimo
33
34. 34
Kitas kampas
• Našumo testavimas
– Atliekamas
projekto/release
pabaigoje, kai sistema
artimai gamybinei
versijai
– Testai imituojantys
tikrus vartotojus
• Našumo stebėjimas
– Atliekamas nuolatos
(per CI)
– Sintetiniai testai,
tikrinantys tam tikras
funkcijas
– Istorinių duomenų
palyginimas