API testavimo pamoka: kas yra API testavimo automatika? Kaip išbandyti

Prieš eidami į API testavimo pamoką, pirmiausia supraskime

Kas yra API?

API (Application Programming Interface) yra skaičiavimo sąsaja, leidžianti bendrauti ir keistis duomenimis tarp dviejų atskirų programinės įrangos sistemų. Programinės įrangos sistemoje, vykdančioje API, yra kelios funkcijos / paprogramės, kurias gali atlikti kita programinės įrangos sistema. API apibrėžia užklausas, kurias galima pateikti, kaip pateikti užklausas, duomenų formatus, kuriuos galima naudoti ir tt, tarp dviejų programinės įrangos sistemų.

Kas yra API testavimas?

API TESTING yra programinės įrangos testavimo tipas, kuris patvirtina programų programavimo sąsajas (API). API testavimo tikslas yra patikrinti programavimo sąsajų funkcionalumą, patikimumą, našumą ir saugumą. API testavime, užuot naudoję standartinius vartotojo įvestis (klaviatūrą) ir išvestis, naudojate programinę įrangą skambučiams į API siųsti, gauti išvestį ir užrašyti sistemos atsakymą. API testai labai skiriasi nuo GUI testų ir nebus sutelkti į programos išvaizdą. Daugiausia dėmesio skiriama programinės įrangos architektūros verslo logikos sluoksniui.

API automatizavimo testavimui reikalinga programa, su kuria galima sąveikauti per API. Norėdami išbandyti API, turėsite tai padaryti

  • Norėdami valdyti API, naudokite testavimo įrankį
  • Parašykite savo kodą, kad išbandytumėte API

Šioje API testavimo pamokoje sužinosite daugiau apie

  • API bandymo aplinkos nustatymas
  • API išvesties tipai
  • API testavimo bandymo atvejai
  • API testavimo metodas
  • Skirtumas tarp API testavimo ir vieneto testavimo
  • Kaip išbandyti API
  • Geriausia API testavimo praktika
  • Klaidų tipai, kuriuos aptinka API testavimas
  • Kaip atlikti API testavimo automatizavimą
  • API testavimo iššūkiai

API bandymo aplinkos nustatymas

  • API testavimas skiriasi nuo kitų programinės įrangos testavimo tipų, nes GUI nėra, tačiau jūs turite nustatyti pradinę aplinką, kuri iškviečia API su reikiamu parametrų rinkiniu ir galiausiai ištiria bandymo rezultatus.
  • Taigi, API automatizavimo bandymų aplinkos nustatymas atrodo šiek tiek sudėtingas.
  • Duomenų bazė ir serveris turėtų būti sukonfigūruoti pagal programos reikalavimus.
  • Atlikus diegimą, reikia iškviesti API funkciją, kad būtų galima patikrinti, ar ta API veikia.

API išvesties tipai

API išvestis gali būti

  1. Bet kokio tipo duomenys
  2. Būsena (sakykite „Pass or Fail“)
  3. Iškvieskite kitą API funkciją.

Pažvelkime į kiekvieno iš aukščiau nurodytų tipų pavyzdį šioje api testavimo pamokoje

Bet kokio tipo duomenys

Pavyzdys: yra API funkcija, kuri turėtų pridėti du sveikus skaičius.

Ilgas pridėjimas (int a, int b)

Skaičiai turi būti nurodyti kaip įvesties parametrai. Išvestis turėtų būti dviejų sveikųjų skaičių susumuojimas. Šį rezultatą reikia patikrinti su numatomu rezultatu.

Skambinti reikia taip, kaip

pridėti (1234, 5656)

Jei skaičius viršija sveikojo skaičiaus ribą, reikia spręsti išimtis.

Būsena (sakykite „Pass or Fail“)

Apsvarstykite toliau nurodytą API funkciją -

  1. Užrakinti ()
  2. Atrakinti ()
  3. Ištrinti()

Jie kaip išvestį grąžina bet kokią reikšmę, pvz., „True“ (sėkmės atveju) arba „false“ (klaidos atveju).

Tikslesnis bandymo atvejis gali būti iškviesti bet kurio scenarijaus funkcijas ir vėliau patikrinti, ar nėra duomenų bazės ar programos GUI pakeitimų.

Kitos API / įvykio iškvietimas

Tokiu atveju mes vadiname vieną iš API funkcijų, kuri savo ruožtu iškvies kitą funkciją.

Pavyzdžiui - Pirmoji API funkcija gali būti naudojama nurodytam įrašui lentelėje ištrinti, o ši funkcija, savo ruožtu, iškviečia dar vieną funkciją, kad ATNAUJINTI duomenų bazę.

API testavimo bandymo atvejai:

Bandomieji API testavimo atvejai yra pagrįsti

  • Grąžinimo vertė, pagrįsta įvesties sąlyga: ją palyginti lengva patikrinti, nes galima apibrėžti įvestį ir patvirtinti rezultatus
  • Nieko negrąžina: kai nėra grąžinimo vertės, reikia patikrinti API elgseną sistemoje
  • Suaktyvinti kitą API / įvykį / pertraukimą: Jei API išvestis suaktyvina įvykį ar pertraukimą, tada reikia stebėti tuos įvykius ir pertraukimo klausytojus
  • Atnaujinti duomenų struktūrą: Duomenų struktūros atnaujinimas turės tam tikrų rezultatų ar padarinių sistemai, ir tai turėtų būti patvirtinta
  • Keisti tam tikrus išteklius: Jei API skambutis modifikuoja kai kuriuos išteklius, jis turėtų būti patvirtintas pasiekiant atitinkamus išteklius

API testavimo metodas

API testavimo metodas yra iš anksto apibrėžta strategija arba metodas, kurį kokybės užtikrinimo komanda atliks siekdama atlikti API testavimą po to, kai bus parengtas kūrimas. Šiame bandyme nėra šaltinio kodo. API testavimo metodas padeda geriau suprasti funkcionalumą, testavimo būdus, įvesties parametrus ir bandymų atvejų vykdymą.

Šie taškai padeda vartotojui atlikti API testavimo metodą:

  1. Suprasti API programos funkcionalumą ir aiškiai apibrėžti programos apimtį
  2. Taikykite bandymo metodus, tokius kaip ekvivalentiškumo klasės, ribinės vertės analizė, klaidų atspėjimas ir API testavimo atvejų rašymas
  3. Reikia tinkamai suplanuoti ir apibrėžti API įvesties parametrus
  4. Atlikite bandymo atvejus ir palyginkite laukiamus ir realius rezultatus.

Skirtumas tarp API testavimo ir vieneto testavimo

Vieneto bandymai API testavimas
  • Kūrėjai tai atlieka
  • Testuotojai tai atlieka
  • Testuojamas atskiras funkcionalumas
  • Testuojamas funkcionalumas nuo galo iki galo
  • Kūrėjas gali pasiekti šaltinio kodą
  • Testuotojai negali pasiekti šaltinio kodo
  • Taip pat dalyvauja vartotojo sąsajos testavimas
  • Testuojamos tik API funkcijos
  • Tikrinamos tik pagrindinės funkcijos
  • Testuojami visi funkciniai klausimai
  • Ribotos apimties
  • Platesnės apimties
  • Paprastai bėgo prieš registraciją
  • Bėgo po sukūrimo

Kaip išbandyti API

API automatizavimo bandymai turėtų apimti bent jau šiuos bandymo metodus, išskyrus įprastą SDLC procesą

  • „Discovery“ testavimas: bandymo grupė turėtų rankiniu būdu vykdyti API dokumentuotų skambučių rinkinį, pvz., Patikrinti, ar tam tikrą API veikiamą šaltinį galima atitinkamai išvardyti, sukurti ir ištrinti
  • Naudojimo testavimas: Šis bandymas patikrina, ar API yra funkcionali ir patogi vartotojui. Ar API gerai integruojasi ir su kita platforma
  • Saugumo testavimas: šis bandymas apima, kokio tipo autentifikavimas reikalingas ir ar neskelbtini duomenys yra užšifruoti per HTTP, ar abu
  • Automatizuotas testavimas: API testavimas turėtų baigtis scenarijų rinkinio ar įrankio, kurį galima naudoti reguliariai vykdant API, sukūrimu
  • Dokumentacija: bandymų grupė turi įsitikinti, kad dokumentai yra tinkami ir pateikia pakankamai informacijos, kad galėtų sąveikauti su API. Dokumentai turėtų būti galutinio projekto dalis

Geriausia API testavimo praktika:

  • API bandymo atvejai turėtų būti sugrupuoti pagal bandymų kategorijas
  • Kiekvieno bandymo viršuje turėtumėte įtraukti iškviečiamų API deklaracijas.
  • Parametrų pasirinkimas turėtų būti aiškiai paminėtas pačiame bandymo byloje
  • Suteikite prioritetą API funkcijų iškvietimams, kad bandytojams būtų lengva juos išbandyti
  • Kiekvienas bandymo atvejis turėtų būti kiek įmanoma savarankiškas ir nepriklausomas nuo priklausomybių
  • Venkite „bandymo grandinės“
  • Tvarkant vienkartines skambučių funkcijas, pvz., „Delete“, „CloseWindow“ ir kt., Reikia būti ypač atsargiems.
  • Skambučių seka turėtų būti atliekama ir gerai suplanuota
  • Norėdami užtikrinti visišką bandymo aprėptį, sukurkite API bandymo atvejus visiems galimiems API įvesties deriniams.

Klaidų tipai, kuriuos aptinka API bandymai

  • Nepavyksta tvarkingai spręsti klaidų sąlygų
  • Nenaudojamos vėliavos
  • Trūksta funkcijų arba jos pasikartoja
  • Patikimumo klausimai. Sunkumai jungiantis ir gaunant atsakymą iš API.
  • Saugumo klausimai
  • Daugialypiai siūlai
  • Spektaklio klausimai. API atsakymo laikas yra labai didelis.
  • Netinkamos klaidos / įspėjimas skambinančiajam
  • Neteisingas galiojančių argumentų verčių tvarkymas
  • Atsakymo duomenys nėra tinkamai sukonstruoti (JSON arba XML)

Kaip atlikti API testavimo automatizavimą

Po pamokų pateikiamas išsamus API testavimo automatizavimo vadovas.

Kaip išbandyti API su „REST Assured“

Kaip išbandyti API su „Postman“

Kaip išbandyti API naudojant UFT

Be to, yra ir kitų API testavimo įrankių. Patikrinkite juos čia

API testavimo iššūkiai

API testavimo uždaviniai apima:

  • Pagrindiniai žiniatinklio API testavimo uždaviniai yra parametrų derinimas, parametrų pasirinkimas ir skambučių seka
  • Programai išbandyti nėra GUI , todėl sunku pateikti įvesties reikšmes
  • Tikrinti išvestį kitoje sistemoje bandytojams yra sunku
  • Parametrų parinkimas ir skirstymas į kategorijas turi būti žinomas testuotojams
  • Reikia išbandyti išimčių valdymo funkciją
  • Testuotojams būtinos žinios apie kodavimą

Išvada:

API sudaro klasių / funkcijų / procedūrų rinkinys, kuris atspindi verslo logikos sluoksnį. Jei API nėra tinkamai išbandyta, tai gali sukelti problemų ne tik API, bet ir skambinančioje programoje. Tai yra nepakeičiamas programinės įrangos inžinerijos testas.

Įdomios straipsniai...