Hur man övervakar de 5 största utmaningarna inom API-testning

Lär dig att övervinna vanliga utmaningar inom API-testning samtidigt som du förbättrar funktionalitet, tillförlitlighet och säkerhet.
Utmaningar vid API-testning

Av Manoj Chaudhary, Teknisk chef och Senior Vice President för systemutveckling

För att kontrollera funktionaliteten, tillförlitligheten och säkerheten hos sina applikationsprogrammeringsgränssnitt (API:er) utför IT-team en rad olika tester, inklusive bedömningar av funktionalitet, styrning, kaos, penetration, prestanda, stress och uthållighet. Nedan beskriver vi fem av de vanligaste utmaningarna inom API-testning som team ställs inför och ger våra rekommendationer för att hantera dem.

1. Att ta sig igenom den ursprungliga installationen

Att skapa, utveckla och få igång testinfrastruktur kan vara ett tidskrävande företag och det kan vara svårt att motivera teamet under hela processen.

Vår rekommendation

Att förklara hur testprocessen lönar sig på lång sikt kan vara nyckeln till att motivera ett testteam. Det är också viktigt att notera hur kritisk denna fas är för API-testningen i stort. När du gör den ursprungliga konfigurationen bör du noga överväga hur du kommer att testa API:et och vad testerna kräver för din infrastrukturs design.

2. Generera och hantera stora volymer testdata

API:er med många parametrar kräver en betydande mängd data (och i vissa fall data med hög kardinalitet) för effektiv testning. Att skapa, underhålla och säkerställa att denna data är återanvändbar kan utgöra en utmaning för testare.

Vår rekommendation

Nyckeln till att generera och ställa in testdata är att förstå begärans- och svarsstrukturerna samt tillhörande API-anrop. Använd datahanteringsverktyg som gör att du kan förstå dessa kopplingar och sedan maskera, generera och dela upp ny data som passar dina testbehov.

3. Tydlig förståelse av målen för styrningstestning

Styrningstestning är avgörande för API:er som är utvecklade för molnapplikationer med flera användare och genomförs för att skydda infrastrukturen mot överanvändning, störande grannar och attacker. API:er har vanligtvis styrningsregler för sin usage (t.ex. lagringspolicyer, hastighetsbegränsningar och nyttolaststorlek), men bristande kunskap och förståelse både när det gäller API-arkitekturens logik och dessa regler leder ofta till osäkerhet kring testmålen.

Vår rekommendation

Team kan mildra denna utmaning med API-testning genom att skapa väl❧definierade och välskrivna styrningsregler; bygg verktyg för ditt team för att anpassa dem efter behov för att göra testningen enklare och effektivare.

4. Utföra kaostestning effektivt

År 2010 skapade Netflix utvecklings- och driftsteam denna form av testning när de började flytta traditionell infrastruktur till Amazon Web Services (AWS) molninfrastruktur. Chaostestning, eller kaossteknik, är ett mycket disciplinerat tillvägagångssätt som testar systemets integritet genom att proaktivt simulera och identifiera fel innan de leder till oplanerade avbrott eller en dålig användarupplevelse.

Processen omfattar:

  • Att testa att ett system fungerar i ett definierat stabilt tillstånd. För det första måste testare identifiera en mätbar systemutdata som indikerar normalt fungerande beteende. Att skapa infrastruktur och verktyg för att definiera och mäta ett stabilt tillstånd kan vara komplext, beroende på arkitekturen och omfattningen av de berörda applikationerna.
  • Tester för att fastställa att ett systems stationära tillstånd förblir stabilt. Efter att ha uppnått ett stabilt tillstånd avgör testarna om det kommer att fortsätta under kontroll-, experiment- och verkliga förhållanden.
  • Testar för minimal påverkan på användare. Testare bryter eller avbryter tjänster för att fastställa negativ påverkan på användare.
  • Introducerar kaos. Efter att ha fastställt att ett system fungerar i ett definierat stabilt tillstånd, att det stabila tillståndet håller och att “blast radius” (konsekvensradien) är begränsad, kör testarna sina kaos-testapplikationer för att se hur systemet beter sig under särskilda stressförhållanden eller omständigheter (t.ex. serverkrascher, trasig hårdvara eller kapade nätverksanslutningar).

Vår rekommendation

Bygg in krokar i er applikation och infrastruktur som gör det möjligt för ert testteam att skapa kaos och enkelt få fram relevanta mätvärden för sprängradien.

5. Att anlita rätt team för penetrationstestning

Vid penetrationstestning attackerar en testare med begränsade förkunskaper om den specifika API:n denna för att bedöma hotvektorn ur ett externt perspektiv. attacker kan rikta in sig på hela API:n eller vissa funktioner och processer.

Vår rekommendation

Ett internt team kan utföra initial penetrationstestning, men en utomstående penetrationstestare bör utföra den uppföljande djupgående penetrationstestningen.

Övervinna utmaningarna med API-testning med Jitterbit API Manager

Som en del av den enhetliga plattformen Harmony, Jitterbit API Manager förenklar API-testning genom att ge insyn i hela livscykeln – från design till prestandaövervakning – och möjliggöra samarbete via en centraliserad management console.

I Jitterbit API Manager genereras API-dokumentationen utifrån OpenAPI-definitionerna och presenteras automatiskt som interaktiv Swagger UI-dokumentation, vilket gör det möjligt för teamen att testa slutpunkter i realtid. Läs mer om API Manager eller kontakta en produktspecialist för att begär en gratis demo.

Har frågor? Vi är här för att hjälpa.

Kontakta oss