Interfejsy i klasy usług wykonywania testu

Interfejsy i klasy usług wykonywania testu służą do dostosowywania sposobu uruchamiania testów. Te interfejsy i klasy znajdują się w pakiecie com.ibm.rational.test.lt.kernel. Każdy interfejs i każda klasa zostały opisane pokrótce w tym temacie i szczegółowo w dokumentacji Javadoc.

Kod niestandardowy nie działa na urządzeniu mobilnym, ale z wygenerowanego kodu Java, który jest dostępny w produkcie test workbench. Dlatego jeśli uruchomienie testu zostanie zainicjowane z urządzenia mobilnego i skrypt testowy zawiera kod niestandardowy, ten kod niestandardowy nie zostanie wykonany. Aby wykonać kod niestandardowy dostępny w skrypcie testowym dla urządzeń mobilnych, należy zainicjować uruchomienie z produktu test workbench. Aby zintegrować kod niestandardowy między dwiema instrukcjami dla urządzeń mobilnych, należy podzielić skrypt testowy. Patrz sekcja Dzielenie testu.

Dokumentacja Javadoc dla interfejsów i klas usług wykonywania testu znajduje się w następującym temacie pokrewnym.
Interfejsy usług wykonywania testu

Interfejs Opis
ICustomCode2 Definiuje dostosowany kod Java™ dla usług wykonywania testu. Tego interfejsu należy używać do tworzenia każdego kodu niestandardowego.
ITestExecutionServices Udostępnia informacje dotyczące dodawania niestandardowych opcji wykonywania testu do testów. Zastępuje interfejs IKLog. Wszystkie metody, które były dostępne w interfejsie IKLog, znajdują się w interfejsie ITestExecutionServices wraz z kilkoma nowo ujawnionymi obiektami i interfejsami. Ten interfejs jest podstawowym interfejsem dla usług wykonywania. Interfejs ITestExecutionServices zawiera następujące interfejsy: IDataArea, IARM, ILoopControl, IPDLogManager, IStatisticsManager, ITestLogManager, ITime oraz ITransaction.
IDataArea Definiuje metody na potrzeby zapisywania i uzyskiwania dostępu do obiektów w obszarach danych. Obszar danych jest kontenerem, który przechowuje obiekty. Elementy obszaru danych są podobne do zmiennych programu i są ograniczone do kontenera będącego ich właścicielem. Aby użyć obiektów specyficznych dla protokołu, należy użyć obiektów udostępnionych przez ten protokół, które są przechowywane w obszarze danych specyficznym dla protokołu.
IARM Udostępnia informacje o definiowaniu specyfikacji miary odpowiedzi aplikacji (Application Response Measurement – ARM). Z tego interfejsu należy skorzystać, jeśli wirtualni użytkownicy są próbkowani dla przetwarzania ARM.
ILoopControl Zapewnia kontrolę nad pętlami w teście lub harmonogramie. Na przykład za pomocą tego interfejsu można przerywać pętle w konkretnych punktach w teście. Pętla, której to dotyczy, jest najbliższą pętlą zawierającą znajdującą się w teście lub harmonogramie.
IPDLogManager Udostępnia informacje rejestrowania, takie jak istotność problemu, poziomy położenia oraz komunikaty o błędach.
IStatisticsManager Zapewnia dostęp do liczników wydajności w interfejsie ICustomCode2 (służącego do definiowania kodu niestandardowego). Liczniki wydajności są przechowywane w hierarchii liczników. Okresowo wszystkie wartości liczników w hierarchii są zgłaszane do środowiska roboczego testowania i gromadzone w wynikach wykonania testu, dzięki czemu są dostępne do użycia w raportach i na wykresach. Każdy licznik w hierarchii ma typ (definiowany w klasie StatType). Operacje dostępne dla licznika zależą od jego typu.
ITestLogManager Rejestruje komunikaty i punkty weryfikacji w dzienniku testu. Tego interfejsu należy używać do obsługi warunków błędów, nieprawidłowości w oczekiwanych danych lub innych warunków abstrakcyjnych, które mają być zgłaszane użytkownikom, albo do porównań lub weryfikacji, których wynik jest zgłaszany w dzienniku testu. Interfejs ITestLogManager może również przekazywać komunikaty informacyjne albo komunikaty o statusie po zakończeniu testu.
ITime Definiuje podstawowe usługi związane z czasem, na przykład bieżący czas systemowy w milisekundach (dostosowany, dzięki czemu wszystkie systemy są synchronizowane z kontrolerem harmonogramu), czas rozpoczęcia testu oraz upływ czasu od rozpoczęcia testu.
ITransaction Zapewnia obsługę transakcji. Dla każdego użytkownika wirtualnego jest utrzymywana kolekcja nazwanych transakcji. Transakcje utworzone w kodzie niestandardowym można uruchamiać i zatrzymywać wszędzie tam, gdzie może być używany kod niestandardowy. Zasięg tych transakcji może obejmować kilka testów. Dla transakcji kodu niestandardowego są przechowywane liczniki wydajności, które są wyświetlane w raportach. Przykładem użycia interfejsu ITransaction jest utworzenie transakcji dla jednego użytkownika wirtualnego, ale nie dla innego, aby ułatwić sprawdzenie odpowiedzi otrzymywanych z testów.
IEngineInfo Udostępnia informacje o mechanizmie wykonywania testowania, takie jak liczba użytkowników wirtualnych działających w tym mechanizmie, liczba użytkowników wirtualnych, którzy zakończyli działanie, katalog lokalny, w którym są wdrożone zasoby testowe, oraz nazwa hosta komputera, na którym działa ten mechanizm.
ITestInfo Udostępnia informacje o działającym teście, takie jak nazwa testu i informacje o bieżącym poziomie rejestrowania określania problemu dla tego testu.
IVirtualUserInfo Udostępnia informacje o użytkownikach wirtualnych, takie jak nazwa użytkownika wirtualnego, poziom rejestrowania określania problemu, poziom rejestrowania testu, globalnie unikalny identyfikator i nazwa grupy użytkownika.
IScalar Udostępnia metody dla prostych liczników wydajności liczb całkowitych. Jest używany dla liczników typu SCALAR i STATIC. Tego interfejsu należy używać do zmniejszania lub zwiększania liczników.
IStat Definiuje obserwacyjne liczniki wydajności. Interfejs ten definiuje metodę wprowadzania punktu danych do liczników wydajności typu RATE, AVERAGE oraz RANGE.
IStatistics Pobiera drzewo liczników wydajności powiązane z procesorem bieżących statystyk. Zatrzymuje dostarczanie liczników wydajności. Zmienia priorytet wątku dostarczania statystyk.
IStatTree Udostępnia metody, które mogą pobierać liczniki potomne, tworzyć fragmenty XML definiujące liczniki i ustawiać pola opisu liczników.
IText Zawiera tekstowe liczniki wydajności. Liczniki wydajności, które nie pasują do żadnego z pozostałych typów liczników, mogą zostać utworzone jako typ TEXT. Liczniki o typie TEXT nie mają przypisanych definicji, ale są gromadzone w wynikach testów.
Klasy usług wykonywania testu

Klasa Opis
DataAreaLockException Zgłasza wyjątek za każdym razem, gdy podejmowana jest próba zmodyfikowania zablokowanego klucza DataArea.
OutOfScopeException Wskazuje, że do obiektu utworzonego przez interfejs ITestExecutionServices istnieje odwołanie spoza jego zamierzonego zasięgu.
TransactionException Zgłasza wyjątek w przypadku niewłaściwego użycia transakcji. Poniższe warunki prowadzą do wyjątku TransactionException: próba uruchomienia transakcji, która już została uruchomiona, próba zatrzymania transakcji, która nie została uruchomiona, i próba uzyskania czasu rozpoczęcia lub czasu trwania transakcji, która nie została uruchomiona. Każda operacja – poza abort() – wykonana względem transakcji, która została przerwana, spowoduje zgłoszenie wyjątku TransactionException.
StatType Udostępnia listę poprawnych typów liczników wydajności. Typy liczników wydajności są następujące: AVERAGE, iAVERAGE, iRANGE, iRATE, iSCALAR, iSTATIC, iSTRUCTURE, iTEXT, RANGE, RATE, SCALAR, STATIC, STRUCTURE oraz TEXT.

Opinia