Výukový program pro testování API: Co je automatizace testování API? Jak testovat

Než půjdeme do tutoriálu Testování API, nejprve pochopíme

Co je API?

API (Application Programming Interface) je výpočetní rozhraní, které umožňuje komunikaci a výměnu dat mezi dvěma samostatnými softwarovými systémy. Softwarový systém, který provádí API, zahrnuje několik funkcí / podprogramů, které může provádět jiný softwarový systém. API definuje požadavky, které lze podat, jak provádět požadavky, datové formáty, které lze použít atd. Mezi dvěma softwarovými systémy.

Co je to Testování API?

TESTOVÁNÍ API je typ testování softwaru, který ověřuje aplikační programovací rozhraní (API). Účelem testování API je zkontrolovat funkčnost, spolehlivost, výkon a zabezpečení programovacích rozhraní. Při testování API namísto použití standardních uživatelských vstupů (klávesnice) a výstupů používáte software k odesílání hovorů do API, získávání výstupu a zaznamenávání odezvy systému. Testy API se velmi liší od testů GUI a nebudou se soustředit na vzhled a chování aplikace. Zaměřuje se hlavně na vrstvu obchodní logiky softwarové architektury.

Testování automatizace API vyžaduje aplikaci, se kterou lze pracovat prostřednictvím API. Abyste mohli otestovat API, budete muset

  • K testování API použijte Testovací nástroj
  • Napište svůj vlastní kód pro testování API

V tomto výukovém programu pro testování API se dozvíte více o-

  • Nastavení prostředí pro testování API
  • Druhy výstupu API
  • Testovací případy pro testování API
  • Přístup k testování API
  • Rozdíl mezi testováním API a testováním jednotek
  • Jak testovat API
  • Osvědčené postupy testování API
  • Typy chyb, které testování API detekuje
  • Jak to udělat API Test Automation
  • Výzvy testování API

Nastavení prostředí pro testování API

  • Testování API se liší od ostatních typů testování softwaru, protože grafické uživatelské rozhraní není k dispozici, a přesto je od vás požadováno nastavení počátečního prostředí, které vyvolá API s požadovanou sadou parametrů, a nakonec prozkoumá výsledek testu.
  • Nastavení nastavení testovacího prostředí pro testování automatizace API se proto jeví jako trochu složité.
  • Databáze a server by měly být konfigurovány podle požadavků aplikace.
  • Po dokončení instalace by měla být volána funkce API, aby se zkontrolovalo, zda toto API funguje.

Druhy výstupu API

Výstup API může být

  1. Jakýkoli typ dat
  2. Stav (řekněme Pass or Fail)
  3. Volejte jinou funkci API.

Podívejme se na příklad každého z výše uvedených typů v tomto tutoriálu testování api

Jakýkoli typ dat

Příklad: Existuje funkce API, která by měla přidat dvě celá čísla.

Dlouhé přidání (int a, int b)

Čísla musí být uvedena jako vstupní parametry. Výstupem by měl být součet dvou celých čísel. Tento výstup je třeba ověřit s očekávaným výsledkem.

Volání je třeba provést jako např

přidat (1234, 5656)

Výjimky musí být zpracovány, pokud počet překračuje celočíselný limit.

Stav (řekněme Pass or Fail)

Zvažte níže uvedenou funkci API -

  1. Zámek()
  2. Odemknout()
  3. Vymazat()

Jako výstup vrátí jakoukoli hodnotu, například True (v případě úspěchu) nebo false (v případě chyby).

Přesnější testovací případ by byl, může volat funkce v kterémkoli ze skriptů a později zkontrolovat změny buď v databázi, nebo v grafickém uživatelském rozhraní aplikace.

Volání jiného API / události

V tomto případě voláme jednu z funkcí API, která zase zavolá jinou funkci.

Například - první funkci API lze použít k odstranění zadaného záznamu v tabulce a tato funkce zase volá jinou funkci k OBNOVENÍ databáze.

Testovací případy pro testování API:

Testovací případy testování API jsou založeny na

  • Návratová hodnota na základě vstupní podmínky: je relativně snadné ji otestovat, protože lze definovat vstup a ověřit výsledky
  • Nic nevrací: Pokud neexistuje návratová hodnota, je třeba zkontrolovat chování rozhraní API v systému
  • Spustit jiné API / událost / přerušení: Pokud výstup API spustí nějakou událost nebo přerušení, pak by tyto události a posluchače přerušení měly být sledovány
  • Aktualizovat datovou strukturu: Aktualizace datové struktury bude mít určitý výsledek nebo účinek na systém a ten by měl být ověřen
  • Upravit určité zdroje: Pokud volání API upraví některé zdroje, mělo by být ověřeno přístupem k příslušným zdrojům

Přístup k testování API

Přístup k testování API je předdefinovaná strategie nebo metoda, kterou tým QA provede za účelem provedení testování API poté, co je sestavení připraveno. Toto testování nezahrnuje zdrojový kód. Přístup k testování API pomáhá lépe porozumět funkcím, testovacím technikám, vstupním parametrům a provádění testovacích případů.

Následující body pomáhají uživateli provádět přístup k testování API:

  1. Porozumění funkčnosti programu API a jasně definování rozsahu programu
  2. Aplikujte testovací techniky, jako jsou třídy ekvivalence, analýza hraničních hodnot a hádání chyb, a zapište testovací případy pro API
  3. Vstupní parametry pro API je třeba naplánovat a vhodně definovat
  4. Proveďte testovací případy a porovnejte očekávané a skutečné výsledky.

Rozdíl mezi testováním API a testováním jednotek

Testování jednotky Testování API
  • Vývojáři to provádějí
  • Testeři to provádějí
  • Je testována samostatná funkčnost
  • Je testována funkce end-to-end
  • Vývojář má přístup ke zdrojovému kódu
  • Testeři nemají přístup ke zdrojovému kódu
  • Zahrnuto je také testování uživatelského rozhraní
  • Testovány jsou pouze funkce API
  • Testovány jsou pouze základní funkce
  • Všechny funkční problémy jsou testovány
  • Omezený rozsah
  • Širší rozsah
  • Obvykle proběhlo před odbavením
  • Běžel po vytvoření sestavení

Jak testovat API

Testování automatizace API by mělo pokrývat alespoň následující testovací metody kromě obvyklého procesu SDLC

  • Testování zjišťování: Testovací skupina by měla ručně provést sadu volání zdokumentovaných v API, jako je ověření, že lze specifikovat, vytvořit a odstranit konkrétní prostředek vystavený API
  • Testování použitelnosti: Toto testování ověřuje, zda je API funkční a uživatelsky přívětivé. A API se také dobře integruje s jinou platformou
  • Testování zabezpečení: Toto testování zahrnuje, jaký typ ověřování je vyžadován a zda jsou citlivá data šifrována přes HTTP nebo obojí
  • Automatizované testování: Testování API by mělo vyvrcholit vytvořením sady skriptů nebo nástroje, který lze použít k pravidelnému provádění API
  • Dokumentace: Testovací tým se musí ujistit, že dokumentace je adekvátní a poskytuje dostatek informací pro interakci s API. Součástí konečné dodávky by měla být dokumentace

Osvědčené postupy pro testování API:

  • Testovací případy API by měly být seskupeny podle testovací kategorie
  • Kromě každého testu byste měli zahrnout deklarace volaných API.
  • Výběr parametrů by měl být výslovně uveden v samotném testovacím případě
  • Upřednostněte volání funkcí API, aby pro testery bylo snadné testovat
  • Každý testovací případ by měl být co nejvíce samostatný a nezávislý na závislostech
  • Ve svém vývoji se vyhněte „testovacímu řetězení“
  • Při manipulaci s funkcemi jednorázového volání, jako jsou - Delete, CloseWindow atd., Je třeba věnovat zvláštní pozornost
  • Sekvenování hovorů by mělo být provedeno a dobře naplánováno
  • Chcete-li zajistit úplné pokrytí testem, vytvořte testovací případy API pro všechny možné vstupní kombinace API.

Typy chyb, které detekuje testování API

  • Nepodaří se elegantně zpracovat chybové podmínky
  • Nepoužívané vlajky
  • Chybějící nebo duplicitní funkce
  • Problémy se spolehlivostí. Problémy s připojením a získáním odpovědi z API.
  • Problémy se zabezpečením
  • Problémy s více vlákny
  • Problémy s výkonem. Doba odezvy API je velmi vysoká.
  • Nesprávné chyby / varování volajícímu
  • Nesprávné zpracování platných hodnot argumentů
  • Data odpovědí nejsou správně strukturována (JSON nebo XML)

Jak to udělat API Test Automation

Následující výukové programy poskytují podrobného průvodce automatizací testu API.

Jak testovat API s REST Assured

Jak otestovat API s Postmanem

Jak testovat API s UFT

Kromě toho existují další nástroje pro testování API. Zkontrolujte je zde

Výzvy testování API

Výzvy testování API zahrnují:

  • Hlavními výzvami při testování webového API je kombinace parametrů, výběr parametrů a pořadí volání
  • K testování aplikace není k dispozici žádné grafické uživatelské rozhraní, které ztěžuje zadávání vstupních hodnot
  • Ověření a ověření výstupu v jiném systému je pro testery málo obtížné
  • Testery musí znát výběr a kategorizaci parametrů
  • Je třeba otestovat funkci zpracování výjimek
  • Zkušební znalosti jsou pro testery nezbytné

Závěr:

API se skládá ze sady tříd / funkcí / postupů, které představují vrstvu obchodní logiky. Pokud API není správně testováno, může to způsobit problémy nejen v aplikaci API, ale také ve volající aplikaci. Jedná se o nepostradatelný test v softwarovém inženýrství.

Zajímavé články...