Slik overvinner du de 5 største utfordringene innen API-testing

Lær hvordan du kan overvinne vanlige utfordringer innen API-testing samtidig som du forbedrer funksjonalitet, pålitelighet og sikkerhet.
API-testutfordringer

Av Manoj Chaudhary, CTO og konserndirektør for ingeniørvirksomhet

For å sjekke funksjonaliteten, påliteligheten og sikkerheten til applikasjonsgrensesnittene (API-ene) sine, utfører IT-team en rekke ulike tester, inkludert funksjons-, styrings-, kaotiske, penetrasjons-, ytelses-, stress- og langtidstester. Nedenfor skisserer vi fem av de vanligste utfordringene team møter under API-testing, og vi gir våre anbefalinger for hvordan de kan løses.

1. Komme seg gjennom det første oppsettet

Å opprette, utvikle og få testinfrastruktur opp og kjøre kan være et tidkrevende arbeid, og det kan være vanskelig å motivere teamet gjennom hele prosessen.

Vår anbefaling

Å forklare hvordan testprosessen lønner seg på sikt, kan være nøkkelen til å motivere et testteam. Det er også viktig å merke seg hvor kritisk denne fasen er for API-testing generelt. Når du gjør den første oppsetningen, bør du tenke nøye gjennom hvordan du skal teste API-en, og hva disse testene krever i infrastrukturen din.

2. Generering og håndtering av store datamengder for testing

API-er med mange parametere krever en betydelig mengde data (og i noen tilfeller data met høy kardinalitet) for effektiv testing. Å opprette, vedlikeholde og sikre at disse dataene kan gjenbrukes, kan utgjøre en utfordring for testere.

Vår anbefaling

Nøkkelen til å generere og sette opp testdata er å forstå forespørsels- og responsstrukturene samt de tilhørende API-kallene. Bruk dataforvaltningsverktøy som lar deg forstå disse sammenhengene, og deretter maskere, generere og trekke ut delmengder av nye data som dekker dine testbehov.

3. Tydelig forståelse av målene for styringstesting

Styringstesting er avgjørende for API-er utviklet for flerbruker-skyapplikasjoner, og gjennomføres for å beskytte infrastrukturen mot overforbruk, forstyrrende naboer og angrep. API-er har vanligvis styringsregler for usage (f.eks. lagringsretningslinjer, hastighetsbegrensninger og nyttelaststørrelse), men manglende kunnskap og forståelse både når det gjelder API-arkitekturlogikken og disse reglene fører ofte til usikkerhet rundt testmålene.

Vår anbefaling

Team kan redusere denne API-testingsutfordringen ved å utarbeide godt definerte og velformulerte styringsregler; bygg verktøy som teamet ditt kan justere etter behov for å gjøre testingen enklere og mer effektiv.

4. Utføre kaos testing effektivt

I 2010 skapte Netflix-utviklings- og driftsteam denne formen for testing da de begynte å flytte tradisjonell infrastruktur til Amazon Web Services (AWS) skyinfrastruktur. Kaostesting, eller kaossteknologi, er en svært disiplinert tilnærming som tester systemets integritet ved proaktivt å simulere og identifisere feil før de fører til uplanlagt nedetid eller en dårlig brukeropplevelse.

Prosessen innebærer:

  • Testing at et system fungerer i en definert stabil tilstand. Først må testere identifisere en målbar systemutgang som indikerer normal arbeidsflyt. Å opprette infrastruktur og verktøy for å definere og måle en stabil tilstand kan være komplekst, avhengig av arkitekturen og omfanget til applikasjonene som er involvert.
  • Testing for å fastslå at et systems stasjonærtilstand vil opprettholdes. Etter å ha etablert en stabil tilstand, avgjør testerne om den vil vedvare under kontroll-, eksperimentelle og virkelige forhold.
  • Testing for minimal impact on users. Testere bryter eller avbryter tjenesten for å fastslå negativ innvirkning på brukere.
  • Innføring av kaos. Etter å ha slått fast at et system fungerer i en definert stasjonær tilstand, at denne tilstanden opprettholdes, og at “blast radius” (skadeomfanget) er avgrenset, kjører testerne sine kaostestingsapplikasjoner for å se hvordan systemet oppfører seg under spesifikke stressforhold eller omstendigheter (f.eks. serverkrasj, feilende maskinvare eller brutte nettverksforbindelser).

Vår anbefaling

Bygg kroker i applikasjonen og infrastrukturen din som gjør det mulig for testteamet ditt for å skape kaos og enkelt få relevante metrikker for skadeomfanget.

5. Engasjere det rette teamet for penitreringstesting

Under penetrasjonstesting vil en tester med begrenset kjennskap til den spesifikke API-en angripe den for å vurdere trusselvektoren fra et eksternt perspektiv. Angrep kan rettet seg mot hele API-en eller visse funksjoner og prosesser.

Vår anbefaling

Et internt team kan utføre innledende penisjonstesting, men en ekstern penisjonstestende tredjepart bør utføre den oppfølgende dype penisjonstesting.

Overvinn utfordringene ved API-testing med Jitterbit API Manager

Som en del av den samordnede Harmony-plattformen, Jitterbit API Manager forenkler API-testing ved å gi oversikt over hele livssyklusen – fra utforming til ytelsesovervåking – og muliggjøre samarbeid gjennom en sentralisert management console.

I Jitterbit API Manager blir API-dokumentasjonen som genereres fra OpenAPI-definisjonene automatisk gjengitt som interaktiv Swagger UI-dokumentasjon, slik at teamene kan teste endepunkter i sanntid. Les mer om API Manager eller ta kontakt med en produktspesialist for å be om en gratis demo.

Har du spørsmål? Vi er her for å hjelpe.

Kontakt oss