Sådan overvindes de 5 største udfordringer inden for API-testning

Lær hvordan du overvinder almindelige udfordringer ved API-test, samtidig med at du forbedrer funktionalitet, pålidelighed og sikkerhed.
API-testningsudfordringer

Af Manoj Chaudhary, CTO og SVP for Engineering

For at kontrollere funktionaliteten, pålideligheden og sikkerheden af deres applikationsprogrammeringsgrænseflader (API'er) udfører IT-teams en række forskellige tests, herunder funktionelle, governance-, kaos-, penetrationstest, ydeevne-, stress- og holdbarhedsvurderinger. Nedenfor skitserer vi fem af de mest almindelige udfordringer ved API-testning, som teams står over for, og giver vores anbefalinger til, hvordan de løses.

1. Gennemførelse af den første opsætning

At skabe, udvikle og få testinfrastruktur op at køre kan være en tidskrævende indsats, og det kan være svært at motivere dit team gennem hele processen.

Vores anbefaling

At forklare, hvordan testprocessen betaler sig på lang sigt, kan være nøglen til at motivere et testteam. Det er også vigtigt at bemærke, hvor kritisk denne fase er for API-testning generelt. Når du foretager den indledende opsætning, skal du nøje overveje, hvordan du vil teste API'en, og hvad disse tests kræver i dit infrastrukturdesign.

2. Generering og håndtering af store mængder testdata

API'er med mange parametre kræver en betydelig mængde data (og i nogle tilfælde data met høj kardinalitet) for at kunne testes effektivt. Det kan være en udfordring for testere at oprette, vedligeholde og sikre, at disse data kan genbruges.

Vores anbefaling

Nøglen til at generere og opsætte testdata er at forstå anmodnings- og svarstrukturerne samt de tilhørende API-kald. Brug datastyringsværktøjer, der gør dig i stand til at forstå disse sammenhænge, og maskér, generér og udtræk derefter nye data, der passer til dine testbehov.

3. Klar forståelse af målene for styringstest

Governance-test er af afgørende betydning for API’er, der er udviklet til cloud-applikationer med flere brugere, og udføres for at beskytte infrastrukturen mod overforbrug, »støjende naboer« og angreb. API'er har typisk styringsregler for deres usage (f.eks. lagringspolitikker, hastighedsbegrænsninger og nyttelaststørrelse), men manglende viden og forståelse af både API-arkitekturlogikken og disse regler medfører ofte usikkerhed omkring testmålene.

Vores anbefaling

Teams kan afhjælpe denne udfordring med API-test ved at skabe veldefinerede og velskrevne styringsregler; opbyg hjælpeværktøjer til dit team, så de kan tilpasse dem efter behov for at gøre testarbejdet nemmere og mere effektivt.

4. Udførelse af kaos-testning effektivt

I 2010 skabte Netflix' udviklings- og driftsteams denne form for test, da de begyndte at flytte traditionel infrastruktur til Amazon Web Services (AWS) skyinfrastruktur. Kaostest, eller kaos-engineering, er en yderst disciplineret tilgang, der tester systemets integritet ved proaktivt at simulere og identificere fejl, før de fører til uplanlagt nedetid eller en dårlig brugeroplevelse.

Processen involverer:

  • Test af, at et system fungerer i en defineret stabil tilstand. Først skal testere identificere et målbart systemoutput, der indikerer normal funktionsdygtighed. Det kan være komplekst at oprette infrastrukturen og værktøjerne til at definere og måle en stabil tilstand, afhængigt af arkitekturen og omfanget af de involverede applikationer.
  • Test for at fastslå, at et systems stabiliserede tilstand vil holde. Efter at have etableret en stabil tilstand, fastslår testerne, om den vil fortsætte under kontrol-, eksperimentelle og virkelige forhold.
  • Test for minimal påvirkning af brugere. Testere bryder eller afbryder tjenesten for at fastslå den negative påvirkning af brugere.
  • Introducerer kaos. Efter at have fastslået, at et system fungerer i en defineret stabil tilstand, at den stabile tilstand opretholdes, og at “sprængningsradius” er indeholdt, kører testere deres kaostestapplikationer for at se, hvordan systemet opfører sig under særlige belastningsforhold eller omstændigheder (f.eks. servernedbrud, fejlbehæftet hardware eller afbrudte netværksforbindelser).

Vores anbefaling

Byg kroge i din applikation og infrastruktur, der gør det muligt for dit testteam at skabe kaos og nemt indhente relevante métrikker for sprængningsradiusken.

5. Udvælgelse af det rette hold til penetrationstest

Ved penetrationstest vil en tester med begrænset kendskab til den specifikke API angifte den for at vurdere trusselsvektoren fra et eksternt perspektiv. Angreb kan rette sig mod hele API'en eller visse funktioner og processer.

Vores anbefaling

Et internt team kan udføre indledende penetrationstesting, men en ekstern penetrationstester bør udføre den opfølgende dybdegående penetrationstesting.

Overvind udfordringerne ved API-test med Jitterbit API Manager

Som en del af den samlede Harmony-platform, Jitterbit API Manager forenkler API-test ved at give indsigt i hele livscyklussen – fra design til overvågning af ydeevne – og muliggøre samarbejde via en centraliseret management console.

I Jitterbit API Manager genereres API-dokumentationen ud fra OpenAPI-definitionerne og vises automatisk som interaktiv Swagger UI-dokumentation, hvilket giver teams mulighed for at teste endpoints i realtid. Læs mere om API Manager eller kontakt en produktspecialist for at anmod om en gratis demo.

Har du spørgsmål? Vi er her for at hjælpe.

Kontakt os