GetRoProperty, GetToProperty w QTP/UFT z Przykładem
⚡ Inteligentne podsumowanie
Object Spy ujawnia właściwości i metody dowolnej kontrolki w testowanej aplikacji, podczas gdy GetROProperty, GetTOProperty i SetTOProperty odczytują i zapisują wartości tych właściwości z QTP or UFT Jeden skrypt w czasie wykonywania.
Ten samouczek pokazuje Obiekt Szpieg.
Object Spy może pomóc w określeniu przydatnych właściwości i metod związanych z obiektem w Twoim środowisku.
HP/mikrofokus UFT tutoriale opisuje również GetROProperty, GetTOProperty i SetTOProperty.
⚠️ Uwaga dotycząca wersji: Narzędzie opisane w tym miejscu zostało dostarczone jako HP QuickTest Professional, stało się Micro Focus Unified Functional Testing i jest obecnie sprzedawane jako OpenText Testowanie funkcjonalne (UFT Jeden). Object Spy i wszystkie trzy metody działają dokładnie tak, jak opisano poniżej.
Kliknij w tym miejscu jeśli film nie jest dostępny
Obiekt Szpieg
- Object Spy to funkcja w QTP za pomocą którego można przeglądać właściwości i metody obiektów testowych i obiektów czasu wykonania.
- Podaje także składnię wybranej metody.
- Object Spy przedstawia pełną hierarchię wybranego obiektu.
Ta hierarchia ma znaczenie, ponieważ nazwa właściwości skopiowana z Object Spy to dokładnie taki ciąg znaków, jakiego oczekują trzy poniższe metody. Śledzenie obiektu jest zatem pierwszym krokiem w niemal każdym zadaniu pobierania właściwości.
GetROProperty
- GetROProperty – wbudowana metoda służąca do pobierania wartości właściwości obiektu w czasie wykonywania.
Korzystanie z GetROProperty składa się z 4 kroków:
- Zarejestruj obiekt, na którym chcesz użyć GetROProperty Repozytorium obiektów.
- W przypadku zarejestrowanego obiektu identyfikuje on właściwość wykonawczą, która może zostać wykorzystana. Możesz użyć Object Spy.
- Użyj metody GetROProperty, aby pobrać zidentyfikowaną właściwość Run-time i zapisać wartość w zmiennej.
- Użyj tej wartości do dalszych odliczeń.
Ponieważ wartość odczytywana jest z poziomu sterowania na żywo, aplikacja musi być otwarta, a obiekt musi faktycznie znajdować się na ekranie w momencie wykonywania wiersza.
UstawWłaściwośćDO i PobierzWłaściwośćDO
- Rozważ przycisk internetowy przechowywany w repozytorium obiektów
- Kiedy test jest uruchomiony QTP tworzy kopię tego obiektu o nazwie Obiekt testowy i porównuje ją z Obiektem czasu wykonania
- Za pomocą GetTOProperty można pobrać wartość właściwości obiektu testowego
- Za pomocą SetTOProperty można zmienić wartość właściwości obiektu testowego
- Po zakończeniu testu ten obiekt testowy zostanie odrzucony, podobnie jak wszelkie modyfikacje wprowadzone we właściwościach obiektu za pomocą polecenia SetTOProperty
- Po ponownym uruchomieniu testu tworzona jest nowa kopia obiektu testowego z oryginalnymi wartościami właściwości przechowywanymi w repozytorium obiektów
- Możesz rozważyć użycie GetTOProperty i SetTOProperty, gdy Twój skrypt testowy zawiera wiele wierszy kodu, a Twoje środowisko jest sporadyczne
- Uwaga: nie ma właściwości SetROProperty
Składnia i przykłady
Wszystkie trzy metody są wywoływane na obiekcie testowym na końcu jego hierarchii i wszystkie przyjmują nazwę właściwości opisu jako ciąg znaków. Tabela zawiera sygnaturę każdej z nich.
| Metoda wykonania | Składnia | Czyta lub pisze |
|---|---|---|
| GetROProperty | obiekt.GetROProperty(Właściwość) | Odczytuje sterowanie na żywo w aplikacji |
| GetTOProperty | obiekt.GetTOProperty(Właściwość) | Odczytuje opis zapisanego obiektu testowego |
| UstawWłaściwośćTO | object.SetTOProperty Właściwość, Wartość | Zapisuje opis obiektu testowego tylko dla tego uruchomienia |
Odczyt wartości w czasie wykonywania to pojedyncza instrukcja. Ten przykład, zaczerpnięty z oficjalne odniesienie do pobierania i ustawiania wartości, pobiera adres docelowy łącza podczas sesji uruchomieniowej.
link_href = Browser("Technologies").Page("Technologies").Link("Jobs").GetROProperty("href")
Zapis, a następnie odczyt właściwości obiektu testowego jest równie krótki. Poniższa para ustawia nazwę przycisku Submit na mój przycisk i odczytuje tę samą wartość.
Browser("QA Home Page").Page("QA Home Page").WebButton("Submit").SetTOProperty "Name", "my button" ButtonName = Browser("QA Home Page").Page("QA Home Page").WebButton("Submit").GetTOProperty("Name")
Typowa weryfikacja łączy te dwie idee: odczyt wartości w czasie wykonywania za pomocą GetROProperty, a następnie porównanie jej z tym, czego oczekuje test.
strValue = Browser("Welcome").Page("Find a Flight").WebList("fromPort").GetROProperty("selection") If strValue = "Acapulco" Then Reporter.ReportEvent micPass, "Default city", "Default city is correct" Else Reporter.ReportEvent micFail, "Default city", "Unexpected value: " & strValue End If
Różnica między GetROProperty i GetTOProperty
Te dwie nazwy różnią się jedną literą i stanowią najczęściej myloną parę w tym narzędziu. RO oznacza obiekt wykonawczy, TO obiekt testowy, a każda z nich odczytuje dane z innego miejsca.
| Punkt porównania | GetROProperty | GetTOProperty |
|---|---|---|
| Źródło wartości | Kontrola na żywo w działającej aplikacji | Opis zapisany dla obiektu testowego |
| Aplikacja musi być otwarta | Tak | Nie |
| Widzi zmianę SetTOProperty | Nie | Tak, w obecnym biegu |
| Typowe zastosowanie | Sprawdzanie, co faktycznie widzi użytkownik | Sprawdzanie lub debugowanie sposobu identyfikacji obiektu |
| Dopasowany setter | Brak — nie ma właściwości SetROProperty | UstawWłaściwośćTO |
Rozważony kontrast uwidacznia podział. Ustaw identyfikator HTML na liście, która go nie zawiera, a następnie odczytaj go na dwa sposoby: GetROProperty zwraca pusty ciąg, ponieważ aplikacja nigdy się nie zmieniła, podczas gdy GetTOProperty zwraca wartość, która została właśnie wpisana do opisu.
Typowe błędy i jak je naprawić
Pobieranie właściwości kończy się niepowodzeniem z kilku przewidywalnych powodów. Tabela zawiera listę tych, z którymi testerzy spotykają się najczęściej.
| Objaw | Spowodować | Fix |
|---|---|---|
| Wywołanie zwraca pusty ciąg znaków | Nazwa właściwości jest nieprawidłowa lub obiekt jej nie ujawnia | Ponownie wykryj obiekt i skopiuj nazwę właściwości dokładnie tak, jak jest podana |
| Obiekt nie został znaleziony w linii GetROProperty | Kontrola jeszcze nie została oddana | Dodaj krok synchronizacji przed odczytem |
| GetROProperty ignoruje zmianę SetTOProperty | Obie metody odnoszą się do różnych obiektów w zależności od projektu | Zamiast tego odczytaj zmianę za pomocą GetTOProperty |
| Zmiana SetTOProperty znika | Edycje obiektów testowych obowiązują tylko w bieżącym przebiegu | Edytuj obiekt w repozytorium lub użyj programowanie opisowe |
| SetROProperty zgłasza błąd składni | Nie ma takiej metody | Przeprowadź aplikację przez standardowy krok, taki jak Ustaw lub Kliknij |
Dwa nawyki zapobiegają większości z nich: śledzenie kontrolki przed napisaniem wiersza zamiast zgadywania nazwy właściwości i VBScript wywołania pobierania są wykonywane blisko kroku, który wymaga wartości, dzięki czemu obiekt nadal będzie na ekranie, gdy nastąpi odczyt.
