API-testning MED HJÄLP AV QTP/UFT: Komplett handledning

⚡ Smart sammanfattning

API-testning i QTP/UFT Man validerar en tjänst direkt, utan inblandat användargränssnitt. Ett API-test byggs som ett flöde av aktiviteter på en arbetsyta, och kontrollpunkter avgör om varje svar klarar testet.

  • 🔘 Inget grafiskt gränssnitt involverat: Indata skickas direkt till tjänsten och det inspelade svaret jämförs med förväntningarna.
  • ☑️ Fem typer som stöds: Webbtjänst, REST, objektorienterat språk, databas och proprietära API:er.
  • Aktivitetsflöde, inte objekt: Dra en HTTP-begäran från verktygslådan till testflödet och ange dess egenskaper.
  • 🧪 Kontrollpunkter avgör domen: En statuskodkontrollpunkt på 200 markerar att samtalet lyckades utan manuell inspektion.
  • 🛠️ Resultat på ett ställe: Resultatvisaren för körningar rapporterar varje aktivitet, dess svar och varje kontrollpunkts resultat.
  • 📌 Nuvarande namngivning: QTP plus HP Service Test blev UFT, säljs nu som OpenText Funktionell testning (UFT ett).

Bygga och köra ett API-test i QTP och UFT One

Innan vi testar ett API behöver vi veta vad ett API är. Ett API (Application Programming Interface) är en samling programvarufunktioner och procedurer som kan utföras av andra programvaruapplikationer.

Vad är API-testning?

API-testning är en mjukvarutestning metod för att validera applikationsprogrammeringsgränssnitt (API:er). Målet med API-testning är att testa API:et med avseende på funktionalitet, tillförlitlighet, säkerhet och prestanda. Vid API-testning används programvara för att skicka indata till API:et, och utdata registreras för att testa API:et.

Så API-testning är:

  • Testar utan GUI
  • Programmatisk simulering av data eller kontrollflödesscenarier.
  • Fokus på funktionalitet, inte på beteende eller kundupplevelse.

Diagrammet nedan placerar API-testning mellan klienten som anropar tjänsten och de data den når.

Omfattningen av API-testning mellan klientlagret och databaslagret

Varför är API-testning viktigt?

API-testning har fyra betydande fördelar

1. API-testning är trenden

Som följande figur visar har API-testning vuxit mycket snabbt under de senaste tio åren. Det har blivit betydligt mer populärt än andra testtyper.

Diagram som visar tillväxten i API-testningsanvändning över tio år

2. Tidseffektiv

Med API-testning kan vi använda parallell exekvering för att minska testets exekveringstid. Du kan spara upp till 5 gånger jämfört med andra testtyper.

3. Språkoberoende

I API-testning utbyts data via XML or JSON, så vilket språk som helst kan användas för att testa svaret. Om du till exempel har en tjänst vars svar är i JSON-format kan du enkelt analysera data med Java, C# eller något annat språk.

4. Enkel GUI-integration

Därför att UFT Man kan hålla GUI-tester och API-tester i samma lösning, ett API-anrop kan ställa in data för ett användargränssnittstest och båda typerna av testrapporter i samma körresultat. Det håller en servicekontroll och skärmen som förbrukar den i ett projekt istället för två verktygskedjor.

API-testning med UFT (Enhetlig funktionell testning)

Det finns många verktyg tillgängliga, både öppna och kommersiella. UFT är ett starkt val för att köra API-tester, eftersom flödet är visuellt byggt och konfigurationen finns i en egenskapsruta.

Den senaste versionen av QTP, kallad HP Unified funktions~~POS=TRUNC (UFT), är en kombination av HP QTP (ett GUI-testverktyg) och HP Service Test (ett API-testverktyg). UFT stöder webben, Java, .NET, Oracle, Siebel, webbtjänster och många andra större språk och plattformar som äldre versioner inte stödde.

⚠️ Produktnamn: verktyget som beskrivs här som HP UFT säljs nu som OpenText Funktionell testning (UFT En), efter att ha gått från HP till Micro Focus och sedan till OpenTextSkärmbilderna nedan kommer från HP-eran-utgåvan, så menyformuleringen skiljer sig från nuvarande versioner, men API-testflödet, aktiviteterna och kontrollpunkterna fungerar på samma sätt.

Typ av API-teststöd av HP UFT

  1. webb-service
  2. REST
  3. Objektorienterat språk
  4. Databas
  5. Proprietärt API

Börja din första API-testning med QTP

I detta API-testning i UFT handledning, vi kommer att täcka UFT Exempel på API-testning. Vi ska testa Facebooks Graph API. Vi kommer att testa API:et som Testfall nedan

  1. Skaffa en profil för den angivna användaren på Facebook.
  2. Kontrollera att profilen överensstämmer med förväntningarna

Här är ett steg för att bygga ett testflöde för detta API.

Planerad UFT testflöde för testfallet Facebook Graph API

⚠️ Om detta exempel: Facebook drog tillbaka Graph API v2.3 för 3 år sedan och åtkomsttoken som visas nedan har sedan länge gått ut, så det exakta anropet returnerar inte längre data. Den ursprungliga begäran behålls oförändrad som det fungerade exemplet; peka samma steg vid vilken aktuell REST-slutpunkt som helst för att följa upp.

Steg 1) Öppna HP UFT och skapa ett nytt projekt API-testning

  1. Välja Starta > (alla) program > HP-programvara > HP Unified Functional Testing > Unified Functional Testing. I nuvarande utgåvor är detta helt enkelt UFT One genväg.

    Windows Startmenysökväg till genvägen för HP Unified Functional Testing

  2. Klicka Arkiv > Nytt > Testa. Välj API-test Typ

    UFT Dialogrutan Lägg till nytt test med API-testtypen vald

  3. När en dialogruta öppnas, ange namnet på API-testet: API_Facebookoch välj en plats för att spara projektet. Klicka på Skapa för att skapa API-testprojektet.

    Namnge det nya API-testet API_Facebook och välja dess plats för att spara

Steg 2) Lägga till HTTP-begäran i testflödet

Vi kommer att använda HTTP-förfrågan för att göra en begäran till Facebooks API.

  1. Välja Verktygslåda > nätverks

    Nätverksgruppen utökades i UFT Verktygslådepanelen

  2. Dra element HTTP-begäran för att testa flödet.

    HTTP-förfrågningsaktivitet släpptes på UFT API-testflödesarbetsyta

Steg 3) Konfigurera och skicka parametrar till en HTTP-förfrågan

  1. Högerklicka på HTTP-begäran objekt för att redigera det.

    Högerklicksmenyn på HTTP Request-objektet i testflödet

  2. I Egenskapsdelen anger du URL

    Egenskapsrutan för HTTP-förfråganaktiviteten med URL fält

    https://graph.facebook.com/v2.3/me?access_token=CAACEdEose0cBANJsDnbZC92mNAghaM6xxZCZBZAvKlMXS98VYvKy%20OlrfAdsUWR8x5aw9Kqc0grscs9zb9IYED4VC3FwapIZBj%20dsuxy%20HdLcff38gYUBFNeRQlH%20fN7eXKoVZBNl0bR233ZAZCw8fLF1QLh98ry2ZBeYBhXLabtTDkFPZA1IqhaMG0mQp30zO1%20QxQ19nVCxZArJA6XRoB1o5FMepII5cn3DgbBmTgZD
  3. Du kan också skicka en parameter till API:et genom att ange värden i Rubrik för begäran rutnät.

    Rutnät för begärandehuvud som används för att skicka extra parametrar till API-anropet

    Använd Graph API Explorer av Facebook för att erhålla värdet för access_token.

  4. Ställ in HTTP-metod till .

    HTTP-metodlista för HTTP-förfrågningsaktiviteten inställd på GET

    GET valts som HTTP-metod för begäran

  5. Inställd Kontrollpunkter av HTTP-begäranStäll in statuskoden till 200 i Kontrollpunkterna. Kontrollpunkterna låter dig se om åtgärden lyckades utan att behöva kontrollera resultatet manuellt, och testets omdöme avgörs utifrån dem. Statuskoden 200 betyder att testfallet har godkänts.

    Kontrollpunktsrutan med den förväntade statuskoden inställd på 200

Steg 4) Kör testet

Klicka på Körning knappen, eller tryck på F5, för att öppna dialogrutan Kör test. Klicka på Körning att kompilera och köra testet.

UFT Dialogrutan Kör test öppnades från knappen Kör

Steg 5) Se resultatet

Resultatvisaren för körning öppnas. I den här API-testningen med UFT Till exempel rapporteras ett misslyckat testfall som i följande figur.

Kör resultatvisaren som visar ett misslyckat API-testfall

När testfallet är godkänt rapporteras resultatet enligt nedan.

Kör resultatvisaren som visar att API-testfallet har godkänts

Ditt första API-test i UFT är nu klar.

Om att gå härifrån

Nu när du har lärt dig att skapa ett test med ett API-test i UFT, kan du skapa ditt eget test för din GUI-lösa applikation. Lägga till en checkpoint per svar och gruppping samtal till transaktioner är de vanliga nästa stegen.

Vanliga frågor

Ett grafiskt gränssnitt testar kontroller på skärmen och lagrar dem som testobjekt. Ett API-test är ett flöde av aktiviteter på en arbetsyta som skickar förfrågningar direkt till en tjänst, så ingenting registreras från gränssnittet.

Nej. Ett API-test har aktiviteter, indata- och utdataegenskaper och datakällor istället för testobjekt, så nej objektförråd är involverat. Endast GUI-tester lär sig objekt och lagrar deras beskrivningar.

Importera tjänsten WSDL till testet. UFT läser dokumentet, skapar en aktivitet för varje operation som tjänsten exponerar och lägger till dem i verktygslådan så att de kan dras till testflödet som vilken annan aktivitet som helst.

Länka aktivitetsindataegenskaperna till en datakälla, till exempel ett Excel-ark eller en XML-fil, istället för typing literala värden. Varje rad producerar sedan en iteration, och Run Results Viewer rapporterar resultatet per iteration.

AI-assisterade verktyg jämför svar mellan körningar för att flagga schemaavvikelser och nyligen felande fält, och det kan gruppera upprepade fel efter sannolik rotorsak. Det förkortar prioriteringen, men de förväntade värdena i varje kontrollpunkt kräver fortfarande ett mänskligt beslut.

Copilot är användbar för koden kring testet: anpassad aktivitetslogik, svarsparsning och hjälpfunktioner. Den kan inte bygga det visuella testflödet eller läsa dina tjänstekrav.tract, så varje begäran och kontrollpunkt den föreslår behöver verifieras.

SoapUI och Postman är lättare och fria till att börja med. UFT förtjänar sin plats där samma projekt även måste täcka användargränssnittet, eftersom en licens och en resultatuppsättning spänner över båda lagren.

Utöver HTTP-statuskoden kan ett API-test kontrollera innehållet i svarstexten, individuella rubrikvärden och returnerade data jämfört med en förväntad källa. Varje kontrollpunktsresultat visas bredvid begäran i Run Results Viewer.

Sammanfatta detta inlägg med: