Techniczne testowanie API

Techniczne testowanie API
Testowanie API jest ważną częścią umiejętności technicznego testera. Pojawia się ono na kilku naszych szkoleniach.
 

Application Programming Interface (API) w dużym uproszczeniu jest kodem, który umożliwia komunikację pomiędzy różnymi procesami, programami i/lub systemami. Często wykorzystywany jest w relacjach klient/serwer, gdzie jeden proces dostarcza funkcjonalności do innego procesu.

Testowanie interfejsu programowania aplikacji API to testowanie komunikacji i często zawiera testowanie negatywne, np. aby sprawdzić odporność obsługi błędów. W pewnym sensie zbliżone jest do testowania graficznego interfejsu użytkownika (GUI).

Zorientowane jest głównie na ocenę wartości wejściowych i wyjściowych.

Testy, które należy wykonać:

  • odporność i obsługa błędów, aby uniknąć niepoprawnych operacji
  • testowanie kombinatoryjne wielu różnych interfejsów.

 

API są często używane w połączniu z innymi API, a pojedynczy interfejs może zawierać wiele parametrów, gdzie ich wartości mogą być łączone na wiele różnych sposobów. Należy przeprowadzić testowanie mechanizmu odzyskiwania i ponownego próbowania (recovery and retry) w celu uniknięcia:

  • utraty transakcji
  • awarii powiązanych z czasem.

 

Interfejs API musi mieć wysoką dostępność, co z kolei wymaga testów niezawodności przez publikujących API oraz dobrego wsparcia dla infrastruktury.

Testowanie API ma szczególne znaczenie dla systemów rozproszonych lub aplikacji ze zdalnym przetwarzaniem jak:

  • wywołania w systemach operacyjnych
  • architektura zorientowana na usługi (SOA)
  • zdalne wywołanie procedur (RPC)
  • usługi sieciowe
  • systemy zbudowane z systemów
  • ... i praktycznie każda aplikacja rozproszona.

 

 

 

 

Przy API natrafimy na możliwe trudności z użyciem specjalistycznych narzędzi (które nie posiadają GUI). Narzędzia te mogą być używane dla ustawienia inicjalnego środowiska, zebrania danych, wzbudzenia API i określenia wyników końcowych.

Typowymi defektami przy testowaniu API będą problemy z interfejsem, problemy z obsługą danych, problemy z czasem, utrata transakcji i duplikacja transakcji.

 

O testowaniu API mówimy podczas naszych szkoleń teoretycznych jak ISTQB Poziom Zaawansowany Techniczny Analityk Testów oraz podczas szkoleń praktycznych jak SoapUI.

 

To powinno Cię zainteresować