Testy wydajnościowe - najlepsze praktyki - Kuba Gajda
Preview:
Citation preview
- 1. Performance TestsPerformance Tests Najlepsze
praktykiNajlepsze praktyki
- 2. Najwiksze wpadkiNajwiksze wpadki wydajnociowe w
Polscewydajnociowe w Polsce w 2014w 2014 System PKW Wybory
Samorzdowe 2014
- 3. Gwne wyzwania/pytaniaGwne wyzwania/pytania Jak mierzy
wydajno ? Gdzie zmierzy wydajno ? Czym zmierzy wydajno ? Kto
powinien przeprowadza testy wydajnoci ? Kto powinien interpetowa
wyniki testw ? Jak skalowa wyniki testw ?
- 4. Rodzaje testwRodzaje testw Load Testing Stress Testing Testy
wolumenowe Testy komponentw Badaj zachowanie aplikacji podczas
normalnej eksploatacji Wykrywaj granicy wydajnociow aplikacji
Okrelj iloci uytkownikw/danych przy ktrej pracuje stabilnie Badaj
zachowanie poszczeglnych warstw aplikacji
- 5. Czas odpowiedzi Jaki jest czas odpowiedzi ? Jak stabilny
jest system ? Jaka konfiguracja jest najlepsza ? W jakim momencie
aplikacja zaczyna zwalnia ? Jaki jest powd bottlenecka ? Czy nowa
wersja aplikacji ma wpyw na czasy odpowiedzi ? Jaki jest najlepszy
sprzt dla aplikacji ? Gwne cele testwGwne cele testw
wydajnociowychwydajnociowych Stabilno Konfiguracj Pojemno
Identyfikacja wskich garde Porwnanie Skalowanie sprztu
- 6. Jak mierzy wydajno ?Jak mierzy wydajno ?
TRANSAKCJETRANSAKCJE MIARY TECHNICZNEMIARY TECHNICZNE
(Liczniki)(Liczniki)
- 7. TransakcjaTransakcja Jest to zmiana stanu aplikcji Jest to
sekwencja krokw w przypadku testowym Numer kroku Krok Oczekiwany
rezultat 1 W pole login wpisz login Pole zostao wypenione 2 W pole
haso wpisz haso Pole zostao wypenione 3 Wcisnij Przycisk zaloguj
Widzimy Ekran powitania zalogowanego uytkownika
- 8. Przykad transakcjiPrzykad transakcji Zaloguj Podaj Login
Kuba Podaj Haso *************** ZalogujZaloguj Witaj Jakub
- 9. Przykad transakcjiPrzykad transakcji Zaloguj Podaj Login
Kuba Podaj Haso *************** ZalogujZaloguj Witaj Jakub
Transaction TimeTransaction Time User TimeUser Time
- 10. Miary techniczneMiary techniczne (Liczniki)(Liczniki)
Zuycie zasobw systemowych (CPU, Pami, Dyski, Ilo procesw
oczekujcych, Context Switch ) Zuycie zasobw serwerw aplikacyjnych
(mechanizmy GC, zuycie przestrzeni pamici w JVM, pule pocze do bazy
danych .)
- 11. Monitorowanie a ProfilowanieMonitorowanie a Profilowanie
MonitorowanieMonitorowanie Jest metod badania nie inwazyjn dla
systemu ProfilowanieProfilowanie Jest metod badania inwazyjn dla
systemu
- 12. Czym monitorowa miaryCzym monitorowa miary techniczne
?techniczne ?
- 13. Czym profilowa ?Czym profilowa ? Diagnostic Server
- 14. Czym profilowa ?Czym profilowa ? Visual JVM
- 15. Gdzie mierzy wydajno ?Gdzie mierzy wydajno ?
- 16. rodowisko do testwrodowisko do testw
wydajnociowychwydajnociowych Musi by zblione architektur do
rodowiska produkcyjnego Musi posiada identyczne iloci danych w
bazach jak na systemie produkcyjnym Musi posiada wsparcie i obsug
administratorw Musi by STABILNE !!!!STABILNE !!!!
- 17. Architektura wzorzecArchitektura wzorzec ProdukcjaProdukcja
TestyTesty Linux Red Hat Sun Solaris WebSphere Application Server
Enterprice Service Bus Linux Red Hat Oracle Database 11 8 GB 4 CPU
8 GB 8 CPU 8 GB 16 CPU Linux Red Hat Sun Solaris WebSphere
Application Server Enterprice Service Bus Linux Red Hat Oracle
Database 11 8 GB 4 CPU 8 GB 8 CPU 8 GB 16 CPU
- 18. Linux Red Hat Sun Solaris Architektura
antywzorzecArchitektura antywzorzec WebSphere Application Server
Enterprice Service Bus Linux Red Hat Oracle Database 11
ProdukcjaProdukcja Windows JBoss Oracle XE TestyTesty MockUp 8 GB 4
CPU 8 GB 8 CPU 8 GB 16 CPU 2 GB 4 CPU
- 19. Architektura dobra praktykaArchitektura dobra praktyka
Linux Red Hat Sun Solaris WebSphere Application Server Enterprice
Service Bus Linux Red Hat Oracle Database 11 8 GB 4 CPU 8 GB 8 CPU
8 GB 16 CPU Linux Linux WebSphere Application Server Enterprice
Service Bus Linux Oracle Database 11 8 GB 4 CPU 4 GB 4 CPU 4 GB 4
CPU ProdukcjaProdukcja TestyTesty
- 20. Wsparcie rodowiskaWsparcie rodowiska Obowizki podczas
testw: Monitoring zasobw Profilowanie rodowiska Restarty rodowiska
Przebudowa i informowanie o zmianach
- 21. Stabilne rodowiskoStabilne rodowisko Cechy stabilnego
rodowiska: Znamy liczb uytkownikw jak to rodowisko jest wstanie
wytrzyma rodowiska dziaa zgodnie z umow SLA
- 22. Jak zbada stabilnoJak zbada stabilno rodowiska ?rodowiska ?
Pre-Testy Scenariusz 1 chcemy aby przez 1 godzin wykonao si 10000
tys. transakcji IloTransakcji Kolejne pre-Testy 1 2 3 4 5 6 300
VUserw 250 VUserw 200 VUserw 200 VUserw 180 VUserw 150 VUserw 7 150
VUserw 3
- 23. Czym testowa ?Czym testowa ?
- 24. Testerzy Load Generation System Under Test Czy mam takie
zasoby ? Ludzie Komputery Jak synchronizowa testerw? Jak zbiera i
analizowa ? Jak zrobi potwarzalny test? Analiza? 123.20 Wciskamy
Zapisz !! ! Dawno dawno temu ..Dawno dawno temu .. Web server
Database server Koordynator
- 25. Dobre, uywane i za darmoDobre, uywane i za darmo Zalety: 1.
Jest darmowy 2. Dodatkowe pluginy 3. Moliwo testowania Usug
SOAP/REST 4. Wykorzystanie XSLT do raportw Wady: 1. Serwisowanie
skryptw 2. Zuycie pamici
- 26. Bardzo dobre uywane i nie zaBardzo dobre uywane i nie za
darmodarmo Zalety: 1. Obsuga wielu technologii 2. Gotowy monitoring
3. Moliwo programowanie automatw Wady: 1. Cena 2. System
licencyjny
- 27. Bardzo dobre uywane i nie zaBardzo dobre uywane i nie za
darmodarmo Zalety: 1. Obsuga wielu technologii 2. Gotowy monitoring
3. Obsuga usug REST/SOAP 4. Obsuga wielu jzykw Wady: 1. Cena 2.
System licencyjny
- 28. Nowy, za darmo z przyszociNowy, za darmo z przyszoci
Zalety: 1. Obsuga jzyka Scala 2. Raportowanie Wady: 1. Brak
wsparcia Load Balancerw 2. Wsparcie tylko systemw WWW
- 29. Narzdzie do testw usugNarzdzie do testw usug
SOAP/RESTSOAP/REST Zalety: Testowanie usug REST/SOAP Prosty
interfejs Obuga jzyka groovy atwe zarzdzanie zmian Wady: Brak
- 30. Jak interpretowa wyniki oraz jakJak interpretowa wyniki
oraz jak je skalowa ?je skalowa ?
- 31. Test referencyjny/TestTest referencyjny/Test
porwnawczyporwnawczy MetodaMetoda TR/TPTR/TP
- 32. Ilo transakcji IloTransakcji Kolejne Testy 1 2 3 4 5 6 Test
referencyjny 1 01-2014 Test referencyjny 2 01-2014 Test
referencyjny 3 01-2014 Trend Test powtrkowy 1 01-2014 Test
powtrkowy 2 01-2014 Test powtrkowy 3 01-2014 Przykad 1Przykad 1 Ilo
transakcji IloTransakcji Kolejne Testy 1 2 3 4 5 6 Test
referencyjny 1 01-2014 Test referencyjny 2 01-2014 Test
referencyjny 3 01-2014 Trend Test powtrkowy 1 01-2014 Test
powtrkowy 2 01-2014 Test powtrkowy 3 01-2014
- 33. Zuycie CPU [%]Zuycia Kolejne Testy 1 2 3 4 5 6 Test
referencyjny 1 01-2014 Test referencyjny 2 01-2014 Test
referencyjny 3 01-2014 Trend Test powtrkowy 1 01-2014 Test
powtrkowy 2 01-2014 Test powtrkowy 3 01-2014 Przykad 2Przykad
2
- 34. Na jakich statystykach oprzeNa jakich statystykach oprze
trend ?trend ?
- 35. Statystyki biznesoweStatystyki biznesowe
Performance/RepeatabilityPerformance/Repeatability - Czas
odpowiedzi transakcji [s] AvailabilityAvailability - Ilo transakcji
na sekund Stability ilo bdw (time-out, niezkoczone transakcje) [il]
Capacity ilo wykonanych transakcji [il]
- 36. Kto powinienKto powinien przeprowadza testy ?przeprowadza
testy ?
- 37. Tester wydajnociTester wydajnoci Powinien zna bardzo dobrze
narzdzia do testw wydajnociowych Powinien zna bardzo dobrze
architektur systemu Powinien opanowa sztuk monitoringu Powinien by
w kontakcie z administratorami jak i programistami
- 38. Kto powinien interpetowaKto powinien interpetowa wyniki
?wyniki ? Administratorzy i developerzyAdministratorzy i
developerzy Miary techniczne BiznesBiznes TransakcjeTransakcje
- 39. Praktyczny pokaz testu wydajnociowego
- 40. KONIEC PYTANIA ?