Testowanie API PRZY UŻYCIU QTP/UFT: Kompletny samouczek

⚡ Inteligentne podsumowanie

Testowanie API w QTP/UFT Usługa jest walidowana bezpośrednio, bez angażowania interfejsu użytkownika. Test API jest budowany jako ciąg działań na kanwie, a punkty kontrolne decydują o tym, czy każda odpowiedź zostanie zaliczona.

  • 🔘 Brak interfejsu graficznego: Dane wejściowe są przesyłane bezpośrednio do usługi, a zarejestrowana odpowiedź jest porównywana z oczekiwaniami.
  • Pięć obsługiwanych typów: Usługa sieciowa, REST, język obiektowy, baza danych i zastrzeżone interfejsy API.
  • Przepływ aktywności, nie obiekty: Przeciągnij żądanie HTTP z przybornika do przepływu testowego i ustaw jego właściwości.
  • 🧪 Punkty kontrolne decydują o werdykcie: Kod kontrolny statusu wynoszący 200 oznacza, że ​​połączenie zostało pomyślnie zakończone bez konieczności ręcznej kontroli.
  • 🛠️. Wyniki w jednym miejscu: Przeglądarka wyników przebiegu raportuje każdą aktywność, jej reakcję i wynik każdego punktu kontrolnego.
  • 📌 Obecne nazewnictwo: QTP plus test serwisowy HP stał się UFT, teraz sprzedawane jako OpenText Testowanie funkcjonalne (UFT Jeden).

Tworzenie i uruchamianie testu API w QTP oraz UFT jeden

Zanim przetestujemy API, musimy dowiedzieć się, czym ono jest. API (interfejs programowania aplikacji) to zbiór funkcji i procedur oprogramowania, które mogą być wykonywane przez inne aplikacje.

Co to jest testowanie API?

Testowanie API jest Testowanie oprogramowania Metoda walidacji interfejsów programowania aplikacji (API). Celem testowania API jest sprawdzenie jego funkcjonalności, niezawodności, bezpieczeństwa i wydajności. W testowaniu API oprogramowanie służy do wysyłania danych wejściowych do API, a dane wyjściowe są rejestrowane w celu przetestowania API.

Testowanie API to:

  • Testowanie bez GUI
  • Programowa symulacja danych lub scenariuszy przepływu sterowania.
  • Skupić się na Funkcjonalność, a nie na zachowaniu lub doświadczeniu klienta.

Poniższy diagram przedstawia testowanie API między klientem wywołującym usługę a danymi, do których dociera.

Zakres testowania API pomiędzy warstwą klienta a warstwą bazy danych

Dlaczego testowanie API jest ważne?

Testowanie API ma cztery istotne zalety

1. Testowanie API jest trendem

Jak pokazuje poniższy rysunek, testowanie API bardzo dynamicznie rozwinęło się w ciągu ostatnich dziesięciu lat. Stało się o wiele popularniejsze niż inne rodzaje testowania.

Wykres przedstawiający wzrost wdrażania testów API na przestrzeni dziesięciu lat

2. Efektywny czas

Dzięki testowaniu API możemy wykorzystać równoległe wykonywanie testów, aby skrócić czas ich wykonywania. W porównaniu z innymi typami testów można zaoszczędzić nawet 5 razy więcej.

3. Niezależny od języka

W testowaniu API dane są wymieniane za pośrednictwem XML or JSON, więc do testowania odpowiedzi można użyć dowolnego języka. Na przykład, jeśli masz usługę, której odpowiedź jest w formacie JSON, możesz łatwo przeanalizować dane za pomocą Java, C# lub w jakimkolwiek innym języku.

4. Łatwa integracja z GUI

Bo UFT W jednym rozwiązaniu można przeprowadzać testy GUI i API, a wywołanie API może utworzyć dane dla testu interfejsu użytkownika i obu rodzajów raportów testowych w tych samych wynikach. Dzięki temu kontrola usługi i ekran, który ją przetwarza, pozostają w jednym projekcie, a nie w dwóch łańcuchach narzędzi.

Testowanie API z UFT (Ujednolicone testowanie funkcjonalne)

Dostępnych jest wiele narzędzi, zarówno typu open source, jak i komercyjnych. UFT jest dobrym wyborem do wykonywania testów API, ponieważ przepływ jest tworzony wizualnie, a konfiguracja jest przechowywana w jednym panelu właściwości.

Ostatnia wersja QTP, zwany HP Unified Testy funkcjonalne (UFT), jest połączeniem HP QTP (narzędzie do testowania interfejsu graficznego) i HP Service Test (narzędzie do testowania interfejsu API). UFT obsługuje sieć, Java, .INTERNET, Oracle, Siebel, usługi sieciowe i wiele innych głównych języków i platform, których starsze wersje nie obsługiwały.

⚠️ Nazewnictwo produktu: narzędzie opisane tutaj jako HP UFT jest teraz sprzedawany jako OpenText Testowanie funkcjonalne (UFT Jeden), przechodząc z HP do Micro Focus, a następnie do OpenTextPoniższe zrzuty ekranu pochodzą z wersji z czasów HP, więc sformułowania w menu różnią się od tych w obecnych kompilacjach, ale przepływ testów API, działania i punkty kontrolne działają w ten sam sposób.

Typ wsparcia testów API HP UFT

  1. Serwis internetowy
  2. REST
  3. Język zorientowany obiektowo
  4. Baza danych
  5. Własne API

Rozpocznij swoje pierwsze testy API za pomocą QTP

W tym testowaniu API w UFT samouczek, w którym omówimy UFT Przykłady testowania API. Będziemy testować Graph API Facebooka. Przetestujemy API jako Przypadek testowy poniżej

  1. Uzyskaj profil określonego użytkownika na Facebooku.
  2. Sprawdź, czy profil jest zgodny z oczekiwaniami

Oto krok tworzenia przepływu testowego dla tego interfejsu API.

Zaplanowany UFT przepływ testu dla przypadku testowego interfejsu API Facebook Graph

⚠️ O tym przykładzie: Facebook wycofał Graph API w wersji 2.3 lata temu, a pokazany poniżej token dostępu dawno wygasł, więc dokładne wywołanie nie zwraca już danych. Oryginalne żądanie pozostaje niezmienione, podobnie jak w przykładzie; aby kontynuować, wskaż te same kroki w dowolnym bieżącym punkcie końcowym REST.

Krok 1) Otwórz HP UFT i utwórz nowy projekt API Testing

  1. Dodaj Start > (Wszystkie) programy > Oprogramowanie HP > Ujednolicone testowanie funkcjonalne HP > Ujednolicone testowanie funkcjonalne. W obecnych wersjach jest to po prostu UFT jeden skrót.

    Windows Ścieżka menu Start do skrótu HP Unified Functional Testing

  2. Kliknij Plik > Nowy > Testuj, Wybierz Test API rodzaj

    UFT Dodaj nowy test dialogowy z wybranym typem testu API

  3. Gdy otworzy się okno dialogowe, wprowadź nazwę testu API: API_Facebooki wybierz lokalizację, w której chcesz zapisać ten projekt. Kliknij Stwórz aby utworzyć projekt testowy API.

    Nadanie nowemu testowi API nazwy API_Facebook i wybór lokalizacji jego zapisu

Krok 2) Dodawanie żądania HTTP do przepływu testowego

Skorzystamy z żądania HTTP, aby wysłać zapytanie do interfejsu API Facebooka.

  1. Wybierz Toolbox > Sieć

    Grupa sieciowa rozszerzyła się w UFT Panel skrzynki narzędziowej

  2. Przeciągnij element Żądanie HTTP do testowania przepływu.

    Aktywność żądania HTTP została upuszczona na UFT Kanwa przepływu testów API

Krok 3) Skonfiguruj i przekaż parametry do żądania HTTP

  1. Kliknij prawym przyciskiem myszy Żądanie HTTP sprzeciwić się jego edycji.

    Menu prawego przycisku myszy na obiekcie żądania HTTP w przepływie testowym

  2. W części Właściwości wprowadź URL

    Panel Właściwości aktywności żądania HTTP z URL pole

    https://graph.facebook.com/v2.3/me?access_token=CAACEdEose0cBANJsDnbZC92mNAghaM6xxZCZBZAvKlMXS98VYvKy%20OlrfAdsUWR8x5aw9Kqc0grscs9zb9IYED4VC3FwapIZBj%20dsuxy%20HdLcff38gYUBFNeRQlH%20fN7eXKoVZBNl0bR233ZAZCw8fLF1QLh98ry2ZBeYBhXLabtTDkFPZA1IqhaMG0mQp30zO1%20QxQ19nVCxZArJA6XRoB1o5FMepII5cn3DgbBmTgZD
  3. Możesz również przekazać parametr do interfejsu API, ustawiając wartości w Nagłówek żądania krata.

    Siatka nagłówka żądania służąca do przekazywania dodatkowych parametrów do wywołania API

    Użyj Eksplorator interfejsu API wykresu Facebooka, aby uzyskać wartość access_token.

  4. Ustaw Metoda HTTP do GET.

    Lista metod HTTP aktywności żądania HTTP ustawiona na GET

    GET wybrano jako metodę HTTP dla żądania

  5. Konfigurowanie Punkty kontrolne ukończenia Żądanie HTTP. Ustaw kod statusu na 200 w części „Punkty kontrolne”. Punkty kontrolne pozwalają sprawdzić, czy akcja zakończyła się powodzeniem bez konieczności ręcznego sprawdzania wyniku, a na ich podstawie określa się wynik pozytywny lub negatywny testu. Kod statusu 200 oznacza, że ​​przypadek testowy został zaliczony.

    Panel punktów kontrolnych z oczekiwanym kodem stanu ustawionym na 200

Krok 4) Uruchom test

Kliknij ikonę Uruchom lub naciśnij F5, aby otworzyć okno dialogowe Uruchom test. Kliknij Uruchom Aby skompilować i uruchomić test.

UFT Okno dialogowe Uruchom test otwierane po kliknięciu przycisku Uruchom

Krok 5) Wyświetl wynik

Otworzy się przeglądarka wyników uruchomienia. W tym teście API z użyciem UFT Na przykład nieudany przypadek testowy jest raportowany w sposób pokazany na poniższym rysunku.

Przeglądarka wyników uruchamiania pokazująca nieudany przypadek testowy API

Gdy przypadek testowy zakończy się sukcesem, wynik zostanie wyświetlony w sposób przedstawiony poniżej.

Przeglądarka wyników uruchamiania pokazująca pomyślne zaliczenie przypadku testowego API

Twój pierwszy test API w UFT jest już kompletny.

Gdzie iść stąd

Teraz, gdy nauczyłeś się tworzyć testy za pomocą testu API w UFTMożesz utworzyć własny test dla swojej aplikacji bez interfejsu graficznego. Dodanie punkt kontrolny na odpowiedź i grupęping wzywa do transakcje Oto typowe następne kroki.

FAQ

Test GUI steruje kontrolkami na ekranie i zapisuje je jako obiekty testowe. Test API to przepływ aktywności na kanwie, który wysyła żądania bezpośrednio do usługi, więc nic nie jest rejestrowane z interfejsu.

Nie. Test API zawiera aktywności, właściwości wejściowe i wyjściowe oraz źródła danych zamiast obiektów testowych, więc nie ma repozytorium obiektów jest zaangażowany. Tylko testy GUI uczą się obiektów i przechowują ich opisy.

Zaimportuj plik WSDL usługi do testu. UFT odczytuje dokument, tworzy aktywność dla każdej operacji udostępnianej przez usługę i dodaje je do panelu Przybornik, dzięki czemu można je przeciągać do przepływu testów tak jak każdą inną aktywność.

Połącz właściwości wejściowe aktywności ze źródłem danych, takim jak arkusz programu Excel lub plik XML, zamiastping wartości literowe. Każdy wiersz generuje następnie jedną iterację, a Przeglądarka wyników uruchomienia raportuje wynik dla każdej iteracji.

Narzędzia wspomagane przez sztuczną inteligencję porównują odpowiedzi z przebiegów, aby oznaczyć dryft schematu i nowe pola, które uległy awarii, a także mogą grupować powtarzające się awarie według prawdopodobnej przyczyny. Skraca to triaż, ale oczekiwane wartości w każdym punkcie kontrolnym nadal wymagają decyzji człowieka.

Copilot jest przydatny w kodzie testowym: niestandardowej logice aktywności, analizie odpowiedzi i funkcjach pomocniczych. Nie może jednak zbudować wizualnego przepływu testu ani odczytać danych usługi.tract, więc każde żądanie i sugerowany punkt kontrolny wymagają weryfikacji.

SoapUI oraz Postman są lżejsze i można z nich korzystać na początek. UFT zyskuje na swoim miejscu tam, gdzie ten sam projekt musi obejmować także interfejs użytkownika, ponieważ jedna licencja i jeden zestaw wyników obejmują obie warstwy.

Oprócz kodu statusu HTTP, test API może sprawdzić treść odpowiedzi, wartości poszczególnych nagłówków i zwrócone dane w porównaniu z oczekiwanym źródłem. Każdy wynik punktu kontrolnego pojawia się obok żądania w przeglądarce wyników uruchomienia.

Podsumuj ten post następująco: