Obciążenie jest emulowane poprzez utworzenie harmonogramu oraz dodanie do niego grup użytkowników, testów i innych elementów.
Przegląd harmonogramu
Harmonogram może być bardzo prosty i dotyczyć jednego użytkownika
wirtualnego uruchamiającego jeden test. Może być również skomplikowany i
zawierać setki wirtualnych użytkowników w różnych grupach, z których każdy uruchamia różne testy w różnym czasie.
Tworzenie harmonogramu
Tworząc harmonogram, można dokładnie
emulować czynności poszczególnych użytkowników.
Ustawianie obciążeń użytkowników
Ustawiając etapy, można modelować obciążenia w czasie i
zmieniać liczbę
użytkowników, którzy wykonują określone czynności, w celu odzwierciedlenia rzeczywistego
wykorzystania. Obciążenie użytkownikami i gromadzenie charakterystyki
wydajności można różnicować dla każdego etapu niezależnie, co oznacza, że pojedyncze
wykonanie umożliwia efektywne zrealizowanie pracy kilku wykonań, które wymagają
zamykania i restartowania użytkowników. Każdy etap trwający konkretny czas i
zawierający konkretną liczbę użytkowników definiuje inne obciążenie.
Praca z agentami
W przypadku znaczącego obciążenia związanego z użytkownikami lub
obciążenia do przetestowania zwykle jeden komputer może nie być w stanie
wydajnie przetworzyć obciążenia. Konieczne
jest rozłożenie obciążenia na wiele komputerów (zwanych również agentami produktu
Rational Performance Tester).
Agenty
są instalowane na komputerach w celu generowania obciążenia aplikacji.
Dodawanie testów obowiązkowych
W harmonogramie można użyć bloku Finally do określenia testów, które muszą zostać uruchomione, gdy obciążenie główne
zostanie zakończone, gdy czas trwania etapu ostatniego utraci ważność lub gdy harmonogram zostanie zatrzymany ręcznie.
Przypisywanie zmiennych do harmonogramu i grupy użytkowników
Oprócz przypisywania zmiennych na poziomie testu, można przypisywać zmienne na poziomie harmonogramu i na poziomie grupy użytkowników. W
przypadku przypisywania zmiennych na poziomie harmonogramu wszystkie testy i grupy użytkowników w harmonogramie mogą używać początkowych wartości
zmiennych, jeśli mają te same nazwy zmiennych.
Definiowanie wymagań dotyczących wydajności w harmonogramach
Istnieje możliwość zdefiniowania wymagań
dotyczących wydajności dla harmonogramu w celu określenia akceptowalnych progów
wydajności i sprawdzenia poprawności umów dotyczących poziomu usług.
Powtarzanie testów w harmonogramie
Dodanie pętli do harmonogramu umożliwia powtórzenie określonej
liczby iteracji testu oraz ustawianie szybkości wykonywania testu. Jeśli pętla zawiera punkt synchronizacji, jest on zwalniany po pierwszej iteracji pętli i pozostaje zwolniony we wszystkich kolejnych iteracjach.
Uruchamianie testów z ustaloną szybkością
Aby uruchamiać test z określoną częstotliwością, należy dodać pętlę do
harmonogramu w celu sterowania częstotliwością iteracji, a następnie dodać testy do pętli. Testy, które są elementami potomnymi pętli, są sterowane przez pętlę.
Jeśli pętla zawiera punkt synchronizacji, jest on zwalniany po pierwszej iteracji pętli i pozostaje zwolniony we wszystkich kolejnych iteracjach.
Uruchamianie testów w kolejności losowej
Harmonogram, który zawiera
tylko grupy użytkowników i testy, będzie sekwencyjnie uruchamiać każdy test w grupie
użytkowników. Dodając losowy selektor do harmonogramu,
można powtórzyć serię testów w losowej kolejności, co pozwala emulować
różne działania rzeczywistych użytkowników.
Dodawanie transakcji do harmonogramu
Transakcja to specyficzna
grupa elementów testu, w przypadku których ważna jest wydajność. Podczas
wyświetlania wyników testu można wyświetlać dane o wydajności dotyczące
dowolnych transakcji, które zostały dodane.
Synchronizowanie użytkowników
Wstawienie punktu synchronizacji umożliwia koordynowanie działań
kilku użytkowników wirtualnych dzięki wstrzymywaniu i wznawianiu działań. Możliwe
jest zsynchronizowanie wszystkich użytkowników wirtualnych na początku harmonogramu
i rozłożenie w czasie zwolnień użytkowników w taki sposób, aby nie przeciążyli
oni systemu. Punkty synchronizacji są również przydatne podczas testu obciążeniowego.
Emulowanie ruchu w sieci z wielu hostów
Domyślnie podczas uruchamiania
harmonogramu każdy użytkownik wirtualny ma ten sam adres IP. Można jednak
sprawić, aby wydawało się, że każdy użytkownik wirtualny jest uruchomiony
na swoim własnym hoście. W tym celu należy skonfigurować aliasy adresów IP na
komputerze hosta i włączyć używanie aliasów w harmonogramie. Po uruchomieniu
harmonogramu będzie się wydawać, że ruch w sieci jest generowany przez wiele
hostów.
Ustawianie poziomów rejestrowania i statystyki
W ramach harmonogramu należy ustawić wielkość i współczynnik próbkowania
dziennika testu i dziennika określania problemu, a także statystykę wyświetlaną
podczas uruchamiania.