top 20 most important api testing interview questions
Najczęściej zadawane pytania dotyczące testowania internetowego interfejsu API Pytania i odpowiedzi, które pomogą Ci przygotować się do nadchodzącej rozmowy kwalifikacyjnej:
API (Application Programming Interface) znane jest z określania interakcji między różnymi komponentami. Kiedy mówimy o architekturze oprogramowania, API głównie rezyduje lub mówi, że koncentruje się w warstwie logiki biznesowej.
Testowanie API jest wykonywane na systemach posiadających wiele API, gdzie główne wymagania do wykonania tej formy testowania to:
- Interakcje między API a aplikacją
- Narzędzie testujące
- Kod jest napisany w celu wykonywania testów
Teraz pozwól nam zobaczyć i zrozumieć więcej na temat interfejsu programowania aplikacji API dzięki następującym pytaniom i odpowiedziom, które będą bardzo pomocne podczas przygotowywania wywiadów.
Nie są to jednak ustalone schematy i pytanie może się różnić, jeśli masz jakieś doświadczenie w pracy nad takimi projektami. Kiedy w CV pojawia się wzmianka o projektach, większość pytań dotyczy projektów, nad którymi pracowałeś.
Najczęstsze pytania do wywiadów dotyczących testowania internetowego interfejsu API
No to ruszamy.
Pytanie 1) Co to jest testowanie API?
Odpowiedź: API to zbiór procedur, narzędzi i protokołów, które razem są wymagane do zbudowania aplikacji. Każde oprogramowanie systemowe lub aplikacja, które składa się z wielu interfejsów API, może wykonywać testy interfejsu programowania aplikacji (API).
Ta forma testowania obejmuje interakcję między różnymi lub mówi wieloma interfejsami API, a także interakcję między interfejsem API a aplikacją. Procedura obejmuje głównie wykonywanie wywołań API za pomocą oprogramowania i obserwowanie reakcji systemu po otrzymaniu wyniku.
Pytanie 2) Wymień kilka typowych testów, które są wykonywane na interfejsach API.
Odpowiedź: Może być wiele powodów, dla których warto przeprowadzić testy API.
Zobaczmy kilka typowych przykładów testów, w których ta forma testowania służy do weryfikacji:
- Każda struktura danych zaktualizowana przez API, która wymaga odpowiedniej walidacji.
- Wprowadź wartości zwracane na podstawie warunków.
- Wywołaj inny interfejs API lub jeśli zostanie wyzwolone jakiekolwiek inne zdarzenie lub pojawi się przerwa.
- Zwracane wartości mogą również mieć wartość null lub być błędnymi wynikami.
- Modyfikacja niektórych zasobów, takich jak aktualizacja bazy danych, zabijanie procesów itp.
Pytanie 3) Co to jest środowisko testowe API?
Odpowiedź: Konfigurowanie środowiska testowego API jest złożoną metodą, w której konfiguracja serwera i bazy danych odbywa się zgodnie z wymaganiami aplikacji. Graficzny interfejs użytkownika (GUI) nie jest dostępny w tej formie testowania.
Po instalacji API jest weryfikowane pod kątem prawidłowego działania. W tym procesie początkowe środowisko wywołujące API jest konfigurowane ze zdefiniowanym zestawem parametrów, aby można było sprawdzić wyniki testów.
Q # 4) Wyjaśnij podejście do testowania API.
Odpowiedź: Poniżej wymieniono czynniki, które determinują podejście:
- Pisz odpowiednie przypadki testowe dla interfejsów API i używaj technik testowania, takich jak analiza wartości granicznych, klasa równoważności itp. W celu weryfikacji funkcjonalności.
- Sprawdź wywołania kombinacji dwóch lub więcej parametrów o wartości dodanej.
- Zdefiniuj zakres i podstawową funkcjonalność programu API.
- Zdefiniuj dokładne parametry wejściowe.
- Wykonanie przypadku testowego i porównanie wyników z oczekiwanymi wynikami.
- Określanie zachowania API w warunkach takich jak połączenie z plikami itp.
Pytanie 5) Wyjaśnij w skrócie różne typy danych wyjściowych obserwowane w API.
Odpowiedź: API jest uważane za niezbędną część łączącą tego cyfrowego świata. Zasadniczo rezyduje w warstwie logiki biznesowej, gdzie wykonuje takie funkcje, jak przetwarzanie poleceń, koordynacja aplikacji, inicjuje decyzje logiczne itp.
Głównym celem jest zwrócenie prawidłowych wyników w każdych warunkach. Głównie dane wyjściowe lub wyniki zaobserwowane przez API są podzielone na trzy sekcje w następujący sposób:
- Zwracanie wartości statusu wyniku jako „Pass” lub „Fail”.
- Wynik w postaci danych lub jakichkolwiek szczegółowych informacji.
- Zdarzenie, w którym wywołanie dowolnej funkcji API zainicjuje wywołanie innej funkcji API.
Pytanie 6) Wymień kilka najlepszych praktyk, które są przestrzegane, aby testy API zakończyły się sukcesem.
Odpowiedź: Wielokrotne wykonywanie testów definiuje najlepsze praktyki zapewniające pomyślne wykonanie testów.
Poniżej wymieniono kilka sprawdzonych metod testowania interfejsu API:
- Przypadki testowe należy zgrupować w kategorii z oczekiwanymi wynikami, które pojawiają się konsekwentnie, i innymi typowymi wynikami.
- Przypadki testowe powinny zawierać wybrane parametry, a także deklaracje wywołań API.
- Testy obciążenia API są wykonywane w celu określenia obciążenia aplikacji systemowej.
- Utrzymuj granice zmiennych używanych w testach, a także unikaj „łączenia testów”.
- Aby ułatwić testerom, nadawane są priorytety wywołania API i planowane jest sekwencjonowanie wywołań.
- Każda kombinacja danych wejściowych i zależności są brane pod uwagę w celu zapewnienia pełnego pokrycia testu.
- Automatyzacja przypadków testowych, dokumentacja jest wykonywana w razie potrzeby.
P # 7) Jakie narzędzia są używane do testowania API?
Odpowiedź: Najlepsze narzędzia do testowania API:
- MYDŁO
- Runscope
- LOADUI
- Zautomatyzowane testy API
- Kędzior
Istnieje kilka innych narzędzi niż wymienione powyżej, które są używane do testowania API.
P # 8) Jakie narzędzia są używane do automatyzacji testów API?
Odpowiedź: Testowanie automatyzacyjne jest koniecznością, gdy mówimy o zwinnym programowaniu w testowaniu API. Jednak język, w którym napisany jest kod, jest również ważnym czynnikiem, ponieważ decyduje o języku narzędzia.
Oto kilka ważnych narzędzi do automatyzacji testów API:
- SOAPUI: Jest to narzędzie testujące API typu open source, które jest uważane za najlepsze narzędzie testowe ze względu na jego funkcje, takie jak tworzenie złożonych skryptów walidacyjnych i przypadków testowych, wydajne pokrycie testów itp.
- HP QTP / UFT: Jest to obecnie znane jako HP UFT, czyli Unified Functional Testing. To narzędzie jest zasadniczo używane w systemach bez interfejsu użytkownika, takich jak usługi internetowe itp.
- PARASOFT: To narzędzie testowe działa na różnych platformach i służy do testowania interfejsu API, który nie ma graficznego interfejsu użytkownika (GUI).
- Mistrz HTTP
- Narzędzia testowe NUnit i JUnit są używane tam, gdzie kod jest napisany odpowiednio w .Net i Java.
Pytanie 9) Co to jest struktura API?
Odpowiedź: Struktura API jest opisana w pliku konfiguracyjnym, który składa się z listy wszystkich API, które są wymagane do aktywacji i są aktywowane dla każdego konkretnego uruchomienia programu. Jest to istotne, ponieważ każdy przebieg testowy nie wymaga wszystkich interfejsów API.
Celem pliku „Config” jest opisanie i zarejestrowanie każdego konfigurowalnego komponentu w przebiegu testowym.
Q # 10) Wyjaśnij dokumentację API.
Odpowiedź: Jak dobrze wiadomo, dla każdej fundacji musi istnieć dobra dokumentacja. Dokumentacja API służy również jako szybkie źródło dostępu do biblioteki lub pracy w programie.
Kiedy przeglądamy takie dokumenty, muszą one składać się z odpowiedniego planu, źródła treści, odpowiedniego układu lub szkicu do dostarczenia, informacji związanych z każdą funkcją itp.
Narzędzia dokumentacji API to:
- JavaDoc
- Doxygen
Poniżej wymieniono kategorie, w których dokumentowana jest każda funkcja, które dotyczą głównie parametrów:
- Opis funkcji
- Sekwencja, składnia i elementy wymagane dla każdego parametru.
- Składnia i typ komunikatu o błędzie, który może wystąpić.
- Linki związane z funkcjami.
Q # 11) Wymień niektóre najczęściej używane szablony dokumentacji API.
Odpowiedź: Oto kilka darmowych szablonów, które znacznie ułatwiają i upraszczają dokumentację API:
gdzie jest klucz bezpieczeństwa na routerze
- Łupek
- FlatDoc
- Wywyższać się
- Plan API
- RestDoc
- Miredot
- Specyfikacja interfejsu API usługi sieci Web.
Q # 12) Wymień kilka przykładów API, które są bardzo dobrze znane i popularne.
Odpowiedź: Jest kilka takich przykładów. Poniżej wymieniono kilka najpopularniejszych:
- Interfejs API Map Google: Są one przeznaczone głównie do użytku mobilnego i stacjonarnego za pomocą interfejsu flash i JavaScript.
- Amazon Advertising API: Amazon jest znany ze swoich produktów, dlatego ich API reklamowe uzyskuje dostęp do ich produktów, aby odkryć ich funkcjonalność, a tym samym odpowiednio się reklamować.
- Świergot: API dla Twittera dzieli się zwykle na dwie kategorie, jedną do uzyskiwania dostępu do danych, a drugą do interakcji z wyszukiwaniem na Twitterze.
- Youtube: Ten interfejs API używany w YouTube obejmuje różne funkcje, w tym filmy, transmisje na żywo, odtwarzacz itp.
P # 13) Jakie metody testowania podlegają testom API?
Odpowiedź: Testowanie API zazwyczaj obejmuje następujące metody testowania:
- Testy jednostkowe i testy funkcjonalne
- Testowanie obciążeniowe do testowania wydajności pod obciążeniem.
- Testy wykrywania pod kątem wyświetlania, tworzenia i usuwania liczby wywołań, które zostały udokumentowane w API.
- Testowanie użyteczności i testowanie niezawodności w celu uzyskania spójnych wyników.
- Testy bezpieczeństwa i testy penetracyjne w celu weryfikacji wszystkich typów uwierzytelniania.
- Testowanie automatyzacji tworzenia i wykonywania skryptów, które wymagają regularnego wykonywania wywołań API.
- Kompleksowe testy integracyjne i testy interfejsu WWW.
- Testowanie dokumentacji API w celu określenia jej wydajności i skuteczności.
Q # 14) Odróżnij testy API i testy jednostkowe.
Odpowiedź: Różnicę między testowaniem API a testowaniem jednostkowym można zrozumieć z poniższej tabeli:
Testów jednostkowych | Testowanie API |
---|---|
Testy jednostkowe są zwykle wykonywane przez programistów, w których każda funkcjonalność jest testowana osobno. | Testowanie API jest wykonywane przez testerów w celu całkowitego przetestowania funkcjonalności. |
Ponieważ mają ograniczony zakres testów, podstawowe funkcje są brane pod uwagę tylko do testowania. | Ponieważ mają szerszy zakres testowania, wszystkie kwestie funkcjonalne są brane pod uwagę podczas testowania. |
Jest to forma testów białoskrzynkowych. | Jest to forma testowania czarnoskrzynkowego. |
Zazwyczaj testy jednostkowe są wykonywane przed dołączeniem kodu do kompilacji. | Testowanie interfejsu API jest wykonywane po przygotowaniu kompilacji do testów. |
Kod źródłowy jest zaangażowany w tę formę testowania. | Kod źródłowy nie jest zaangażowany w tę formę testowania. |
P # 15) Jakie wyzwania obejmuje testowanie API?
Odpowiedź: Wyzwania są częścią każdej formy testowania i to samo dotyczy testowania API.
Poniżej wymieniono kilka typowych wyzwań, z którymi borykają się testy API:
- Pierwszym i najważniejszym wyzwaniem jest dobór odpowiedniego parametru, a następnie jego kombinacja.
- Kategoryzacja parametrów
- Wymagane jest prawidłowe sekwencjonowanie wywołań, ponieważ może to prowadzić do niedostatecznego pokrycia w testowaniu.
- Weryfikacja i walidacja wyników
- Innym ważnym wyzwaniem jest podanie wartości wejściowych, co jest bardzo trudne, ponieważ w tym przypadku interfejs GUI nie jest dostępny.
P # 16) Jakie typy problemów zaobserwowano podczas wykonywania testów API?
Odpowiedź: Podczas przeprowadzania testów muszą być z nimi związane problemy. Problemy zaobserwowane podczas przeprowadzania tej formy testowania nie są nowe ani bardzo różne, ale są powszechne w tej kategorii.
Znajdź poniżej listę takich problemów / usterek:
- Niespójny lub brak mechanizmu obsługi błędów
- Powtarzanie lub nadmiarowość funkcji
- W niektórych przypadkach brakuje wymaganej funkcjonalności
- Przekazywanie niepoprawnego argumentu do wartości wejściowych
- Niewłaściwa komunikacja
- Problemy ze stresem i wydajnością
- Problemy z niezawodnością w odniesieniu do połączeń z innymi interfejsami API
- Problemy z wielowątkowością i nieprawidłową obsługą.
P # 17) Dlaczego testowanie API jest określane jako najbardziej odpowiednia forma testów automatycznych?
Odpowiedź: Tak, to prawda, że testowanie API jest teraz preferowane w stosunku do testowania GUI i jest uważane za najbardziej odpowiednie.
Poniżej znajduje się kilka przyczyn tego stwierdzenia.
- Weryfikuj bardzo skutecznie wszystkie ścieżki funkcjonalne testowanego systemu.
- Zapewnia najbardziej stabilny interfejs.
- Łatwiejsze w utrzymaniu i zapewnia szybką informację zwrotną.
P # 18) Czym różni się testowanie na poziomie interfejsu użytkownika od testowania interfejsu API?
Odpowiedź: Głównym aspektem testowania poziomu interfejsu użytkownika (interfejsu użytkownika) jest przetestowanie graficznej części aplikacji zawierającej funkcje, takie jak czcionka, układ itp.
Natomiast głównym celem testowania API jest ustanowienie komunikacji między różnymi systemami oprogramowania i odbywa się ona głównie w warstwie logiki biznesowej. Nigdy nie koncentruje się na wyglądzie aplikacji.
P # 19) Co to jest TestApi?
Odpowiedź: TestApi jest znany jako biblioteka bloków testowych, które są niezbędne dla programistów i testerów do tworzenia narzędzi testowych, a także zestawów testów automatycznych.
P # 20) Co wiesz o błędach i ostrzeżeniach API?
Odpowiedź: Gdy coś pójdzie nie tak, tj. Wynik nie jest zgodny z oczekiwaniami, pojawia się błąd, a ostrzeżenia są opisywane jako komunikat w odpowiednim formacie. W tym samym module może występować jedno lub wiele ostrzeżeń.
Różne rodzaje ostrzeżeń, które mogą się pojawić, to:
- Ostrzeżenie dotyczące weryfikacji parametru
- Ostrzeżenie o brakującym module
Mogą wystąpić różne rodzaje błędów:
- Błędy w dokumentacji
- Brakujące błędy modułu
- Błędy walidacji parametrów
- Niektóre standardowe komunikaty o błędach.
Wniosek
Powyższe pytania do wywiadu API są bardzo pomocne, gdy ankieter koncentruje się na znalezieniu wiedzy o Twojej domenie funkcjonalnej.
Cóż, zrozumiałe jest, że wiedzę o aplikacjach uzyskuje się tylko podczas pracy z taką technologią. Jednak ankieterzy są bardziej zainteresowani sprawdzeniem Twojej wiedzy i doświadczenia, ale ważne są również podstawy.
Mam nadzieję, że ten artykuł będzie bardzo pomocny w przygotowaniu do rozmowy kwalifikacyjnej dotyczącej testowania interfejsu API.
rekomendowane lektury
- 10 najlepszych narzędzi do testowania API w 2021 roku (narzędzia testowe SOAP i REST API)
- Ponad 15 samouczków SoapUI: Najlepsze narzędzie do testowania interfejsu API usług internetowych
- Samouczek testowania interfejsu API: kompletny przewodnik dla początkujących
- Jak zautomatyzować żądania API za pomocą Rest Assured i Jenkins
- Jak stworzyć dokumentację API w Postman?
- Jak używać programu Postman do testowania różnych formatów API?
- Upraszczanie testowania API w Katalon Studio
- Parasoft SOAtest Tutorial: Bezskryptowe narzędzie do testowania API
- Samouczek POSTMAN: Testowanie API przy użyciu POSTMAN
- Kody odpowiedzi Rest API i rodzaje żądań odpoczynku
- Testowanie REST API z ogórkiem przy użyciu metody BDD
- Testowanie REST API z Spring RestTemplate i TestNG
- Samouczek dotyczący REST API: Architektura i ograniczenia interfejsu API REST
- Testowanie bazy danych selenu (przy użyciu WebDriver i JDBC API)
- 10 najlepszych narzędzi do zarządzania interfejsami API z porównaniem funkcji
- 20 najważniejszych pytań i odpowiedzi do wywiadów dotyczących testowania API
- 35 najpopularniejszych pytań do wywiadów dotyczących ASP.Net i interfejsu API sieci Web z odpowiedziami