Punkty kontrolne w QTP/UFT z Przykładem
⚡ Inteligentne podsumowanie
Punkty kontrolne w UFT/QTP sprawdza, czy aplikacja zwraca dokładną wartość właściwości, tekstu, obrazu lub bazy danych, jakiej tester oczekuje na danym etapie, przekształcając nagrane odtwarzanie w werdykt o zaliczeniu lub niezaliczeniu zadania, któremu mogą zaufać zautomatyzowane zespoły.
Czym jest punkt kontrolny w UFT/QTP?
A punkt kontrolny in UFT/QTP to punkt weryfikacji, który porównuje bieżącą wartość określonej właściwości obiektu, atrybutu strony lub źródła danych z wartością oczekiwaną przechwyconą wcześniej w teście. Jeśli wartość bieżąca i oczekiwana są zgodne, UFT rejestruje status PASS (pozytywny); jeśli nie, rejestruje status FAIL (negatywny).
Punkty kontrolne przekształcają skrypt, który jedynie odtwarza akcje, w skrypt weryfikujący wyniki. Zarejestrowany skrypt może pomyślnie wykonać każdy krok, nawet jeśli testowana aplikacja wyświetla niewłaściwy tekst, niewłaściwy obraz lub uszkodzony rekord bazy danych — punkt kontrolny wychwytuje tę różnicę i ją raportuje.
Dlaczego warto używać punktów kontrolnych w automatyzacji testów?
Nagranie skryptu odtwarza jedynie sekwencję kliknięć i naciśnięć klawiszy; nigdy nie potwierdza, czy aplikacja wygenerowała poprawny wynik. Punkty kontrolne niwelują tę lukę, przekształcając każdą zarejestrowaną czynność w testowalne stwierdzenie z mierzalnym wynikiem.
- Zamień odtwarzanie na weryfikację, dzięki czemu każde uruchomienie będzie skutkowało wyraźnym wynikiem PASS lub FAIL, a nie tylko ukończonym skryptem.
- Wykrywaj regresje na wczesnym etapie, zanim błąd dotrze do wersji, którą testerzy uznają za stabilną.
- Weryfikuj dane niewidoczne podczas ręcznej obserwacji, takie jak ładunki XML, wiersze bazy danych lub ukryte właściwości obiektów.
- Udokumentuj oczekiwane zachowanie, aby każdy czytający skrypt rozumiał, co w danym kroku oznacza „poprawne”.
Ponieważ punkty kontrolne są uruchamiane automatycznie przy każdym wykonaniu, eliminują one konieczność ręcznego sprawdzania każdego ekranu przez testera po każdym cyklu, co jest tym, co sprawia, że UFT/QTP praktyczne do powtarzania testy regresji w różnych kompilacjach.
Rodzaje punktów kontrolnych w UFT/QTP
UFT/QTP Oferuje kilka typów punktów kontrolnych, dzięki czemu tester może zweryfikować konkretny aspekt aplikacji, który ma znaczenie na danym etapie — właściwość statyczną, blok tekstu, obraz bitmapowy, rekord bazy danych lub cały dokument XML. Wybór typu pasującego do testowanego obiektu sprawia, że krok jest skupiony i łatwy w utrzymaniu.
- Standardowy punkt kontrolny: Porównuje oczekiwane wartości właściwości obiektu zarejestrowane podczas nagrywania z bieżącymi wartościami obiektu podczas sesji uruchomieniowej. Funkcja ta jest obsługiwana przez każde środowisko dodatków.
- Punkt kontrolny strony: Standardowy punkt kontrolny utworzony dla strony internetowej. Sprawdza on łączną liczbę linków i obrazów na stronie oraz może mierzyć czas ładowania strony.
- Punkt kontrolny tekstu: Sprawdza, czy określony tekst pojawia się w zdefiniowanym obszarze strony internetowej lub Windows-na podstawie aplikacji.
- Punkt kontrolny obszaru tekstowego: Sprawdza, czy ciąg tekstowy jest wyświetlany w zdefiniowanym obszarze ekranu Windows-aplikacja oparta na kryteriach, takich jak dopasowanie wielkości liter lub dopasowywanie symboli wieloznacznych.
- Punkt kontrolny mapy bitowej: Sprawdza mapę bitową obrazu lub całej strony internetowej, porównując piksel po pikselu rzeczywisty obraz z oczekiwanym.
- Punkt kontrolny obrazu: Sprawdza właściwości obrazu internetowego, takie jak lokalizacja pliku źródłowego. W przeciwieństwie do punktu kontrolnego mapy bitowej, nie porównuje pikseli.
- Punkt kontrolny dostępności: Weryfikuje zgodność z wytycznymi World Wide Web Consortium (W3C) dotyczącymi technologii internetowych, ułatwiając osobom niepełnosprawnym korzystanie z aplikacji.
- Punkt kontrolny bazy danych: Uruchamia zapytanie w czasie rekordu i zapisuje zwrócone wartości bazy danych jako wartości oczekiwane; to samo zapytanie jest uruchamiane ponownie w czasie wykonywania, co umożliwia porównanie wartości rzeczywistych i oczekiwanych.
- Punkt kontrolny stołu: Dynamicznie sprawdza zawartość komórek w tabeli lub siatce, a także właściwości tabeli, takie jak wysokość wiersza i szerokość komórki. Działa podobnie do punktu kontrolnego bazy danych.
- Punkt kontrolny XML: Weryfikuje dane XML, schematy XML i zasoby XML osadzone na stronie internetowej lub w samodzielnym dokumencie .xml.
Poniższa tabela porównuje dziesięć typów punktów kontrolnych, dzięki czemu możesz wybrać właściwy przed rozpoczęciem nagrywania.
| Typ punktu kontrolnego | Weryfikuje | Najlepiej używany do |
|---|---|---|
| Standardowe | Wartości właściwości obiektu | Uniwersalna walidacja dowolnego obiektu dodatku |
| Strona | Linki, obrazy, czas ładowania | Potwierdzenie całkowitego załadowania strony internetowej |
| Tekst | Obecność określonego tekstu | Potwierdzenie wyświetlenia komunikatu lub etykiety |
| Obszar tekstowy | Tekst w obszarze ekranu | Windows aplikacje z niestandardowymi kontrolkami tekstowymi |
| Bitmap | Dopasowanie obrazu na poziomie pikseli | Regresja wizualna wykresów, logotypów, układów |
| Obraz | Właściwości źródła obrazu | Potwierdzenie dostarczenia prawidłowego pliku obrazu |
| Accessibility | Zgodność ze standardem W3C | Audyt stron internetowych pod kątem luk w zakresie dostępności |
| Baza danych | Wartości wyników zapytania | Potwierdzenie zgodności danych zaplecza z interfejsem użytkownika |
| Stół | Zawartość i układ komórek siatki | Raporty, wyniki wyszukiwania i siatki danych |
| XML | Dane i schemat XML | Usługi sieciowe i strony oparte na XML |
Punkt kontrolny a wartość wyjściowa: jaka jest różnica?
Testerzy nowi w UFT/QTP Często mylą punkty kontrolne z wartościami wyjściowymi, ponieważ oba są wstawiane z tego samego menu i oba odczytują bieżącą właściwość z obiektu. Te dwie funkcje służą przeciwnym celom.
| WYGLĄD | Punkt kontrolny | Wartość wyjściowa |
|---|---|---|
| Cel | Potwierdza, że przechwycona właściwość odpowiada oczekiwanej wartości | Przechwytuje właściwość środowiska wykonawczego, aby można było ją ponownie wykorzystać w późniejszym kroku |
| Wpływ zaliczenia/niezaliczenia | Nie udaje się wykonać kroku i zgłasza niezgodność wyników | Nigdy nie zawodzi w teście samodzielnie |
| Gdzie idzie wartość | Porównano wewnętrznie, pokazano jako PASS/FAIL w wynikach testu | Przechowywane w tabeli danych czasu wykonania lub zmiennej |
| Typowe zastosowanie | Potwierdź tytuł strony lub sumę bazy danych | Przekaż wygenerowany numer zamówienia do następnej akcji |
Użyj punktu kontrolnego, gdy skrypt wymaga dowodu zaliczenia/niezaliczenia, a także wartości wyjściowej, gdy późniejszy krok wymaga przechwyconych danych jako danych wejściowych.
Jak wstawić punkt kontrolny UFT/QTP
Większość typów punktów kontrolnych można wstawić tylko wtedy, gdy UFT Nagrywanie jest w toku; po zakończeniu nagrywania menu punktów kontrolnych staje się niedostępne dla nowych wstawek. Poniższe kroki umożliwiają wstawienie standardowego punktu kontrolnego, najczęściej używanego typu.
Kliknij w tym miejscu jeśli film nie jest dostępny
- Otwórz testowaną aplikację i rozpocznij nagrywanie in UFT.
- Przejdź do ekranu lub obiektu, który chcesz zweryfikować, a następnie kliknij prawym przyciskiem myszy krok, po którym znajduje się punkt kontrolny.
- Z menu kontekstowego wybierz opcję Wstaw standardowy punkt kontrolny lub wybierz konkretny typ — mapę bitową, bazę danych, tabelę itd. — z podmenu Punkt kontrolny.
- W oknie dialogowym Właściwości punktu kontrolnego zachowaj domyślną nazwę punktu kontrolnego lub zastąp ją nazwą opisową.
- Wybierz właściwości obiektu do weryfikacji. Każda wybrana właściwość jest oznaczona ptaszkiem; ikona ABC oznacza wartość stałą, a ikona zmienia się, jeśli właściwość jest sparametryzowana.
- Kliknij przycisk OK. UFT wstawia polecenie Check bezpośrednio po bieżącym kroku.
- Zatrzymaj nagrywanie i odtwórz test ponownie, aby potwierdzić, czy raporty z punktów kontrolnych zostały zaliczone.
⚠ Typowy błąd: Jeżeli krok bezpośrednio poprzedzający punkt kontrolny zamyka lub zastępuje okno, do którego jest skierowany, UFT zgłasza błąd w czasie wykonywania, ponieważ obiekt nie istnieje już w momencie, gdy punkt kontrolny próbuje go odczytać. W HP QTPZwykle wystarczy zmienić kolejność wykonywania kroków, tak aby obiekt docelowy był nadal otwarty w momencie wykonywania punktu kontrolnego, aby rozwiązać problem.
Poniższy fragment VBScript pokazuje tę samą ideę wyrażoną poprzez UFT model obiektu automatyzacji: polecenie Check zwracające wartość logiczną, którą skrypt następnie raportuje za pomocą obiektu Reporter.
Dim Result ' Holds the PASS/FAIL outcome of the checkpoint Browser("Flight Reservation").Page("Flight Reservation").WinEdit("Agent Name:").Set "Diana" Browser("Flight Reservation").Page("Flight Reservation").WinButton("OK").Click ' Run the Standard Checkpoint that was inserted after the OK click Result = Browser("Flight Reservation").Page("Flight Reservation").Check(CheckPoint("Flight Reservation Window")) If Result Then Reporter.ReportEvent micPass, "Checkpoint Passed", "Flight Reservation window matches expected values" Else Reporter.ReportEvent micFail, "Checkpoint Failed", "Flight Reservation window does not match expected values" End If
W tym filmie przedstawiono różne typy punktów kontrolnych dostępnych w UFT/QTP, w tym standardowe, bitmapowe i bazodanowe punkty kontrolne w działaniu.
Najlepsze praktyki efektywnego wykorzystania punktów kontrolnych
Punkt kontrolny jest tak niezawodny, jak obiekt i właściwość, których dotyczy. Poniższe praktyki zapewniają dokładność punktów kontrolnych w miarę zmian w testowanej aplikacji.
- Sprawdzaj konkretny obiekt, a nie całą stronę, aby uniknąć niestabilnych testów, które kończą się niepowodzeniem przy niezwiązanych z tym zmianach interfejsu użytkownika.
- Pozostaw zaznaczony obiekt otwarty, gdy wykonywany jest punkt kontrolny. Zmiana kolejności kroków często jest sposobem na naprawienie błędu „obiekt nie został znaleziony” opisanego powyżej.
- Woleć Baza danych lub punkty kontrolne XML nad punktami kontrolnymi mapy bitowej w celu walidacji danych — porównania map bitowych nie działają w przypadku zmian czcionki, rozdzielczości lub motywu, które nie mają nic wspólnego z danymi.
- Parametryzuj wartości punktów kontrolnych z tabeli danych, gdy to samo sprawdzenie musi zostać przeprowadzone w wielu iteracjach testu.
- Nadaj każdemu punktowi kontrolnemu opisową nazwę, aby łatwo było zlokalizować błąd w oknie Wyniki testu.
- Połącz punkty kontrolne z synchronizacją, np. poleceniem Wait lub Sync Metoda ta sprawia, że sprawdzenie nigdy nie zostanie wykonane przed zakończeniem ładowania strony.

