Konceptet med API's daterer endda fremkomsten af personlig computing og web, det har eksisteret siden 1960'erne. Uden API'er ville de digitale oplevelser, som vi oplever hver dag, ikke være mulige. API'er er ansvarlige for alt fra at drive informationsrige marketingkampagner til at kontrollere vejret i en mobilapp. Disse API'er testes, inden de tages i brug, og vi kalder processen 'API-testning'. I denne artikel vil vi udforske 'Hvad er API-test?' I detaljer.Hvis du er ny med softwaretest, skal du også læse .
Lad os se på emner, der er dækket af denne artikel:
- Hvad er en API?
- Hvad er API-test?
- Hvorfor skal vi lave API-test?
- Hvordan udføres API-test?
- Typer af API-test
- Liste over populære API-testværktøjer
- Udfordringer ved API-test
Hvad er en API?
API er forkortelsen for Application Programming Interface, som er en softwareformidler, der gør det muligt for to applikationer at tale med hinanden.
Antag at du søger efter et hotelværelse via et online rejsebestillingssted. Ved hjælp af websteds onlineformular udfylder du de nødvendige oplysninger, såsom den by, du ønsker at bo i, ind- og udtjekningsdatoer, antal gæster og antal værelser. Klik derefter på 'søg'. Men hvad sker der mellem indtastning af dine oplysninger og modtagelse af dine hotelvalg? API'er, det er hvad! Webstedet samler information fra mange forskellige hoteller. Når du klikker på 'søg', interagerer webstedet derefter med hvert hotels API, som leverer resultater for tilgængelige værelser, der opfylder dine kriterier. Og alt dette sker på få sekunder på grund af en API, der fungerer som en messenger, der kører frem og tilbage mellem applikationer, databaser og enheder.
Men hvis en API ikke fungerer effektivt og effektivt, vil den aldrig blive vedtaget, uanset om den er gratis eller ej. For at undgå det testes API'er, inden de tages i brug.
Hvad er API-test?
API-test er en type softwaretest, hvor applikationsprogrammeringsgrænseflader (API'er) testes for at afgøre, om de opfylder forventningerne til funktionalitet, pålidelighed, ydeevne og sikkerhed.
mvc-arkitektur i java med eksempel
Kort sagt er API-testning beregnet til at afsløre fejl, uoverensstemmelser eller afvigelser fra den forventede adfærd for en API. Normalt har applikationer tre separate lag:
- Præsentationslag eller brugergrænseflade
- Business Layer eller applikationsbrugergrænseflade til behandling af forretningslogik
- Database Layer til modellering og manipulation af data
API-test udføres på det mest kritiske lag af softwarearkitektur, Business Layer. Det er i forretningslaget, forretningslogisk behandling udføres, og alle transaktioner mellem brugergrænseflade (UI) og database sker. Så for at sikre, at API tilbyder komplet tilsigtet funktionalitet, er det let at udvide softwareproduktet fremover. Flere grunde til, hvorfor API-test er vigtig, diskuteres derefter i denne artikel 'Hvad er API-test?'.
Hvorfor skal vi lave API-test?
API-test er en vigtig aktivitet, som testteam bør fokusere på. Det giver en række fordele i forhold til andre former for test
Sproguafhængig: Data udveksles via XML og JSON, så ethvert sprog kan bruges til automatisering uafhængigt af de sprog, der bruges til at udvikle applikationen.
GUI uafhængig: API-test kan udføres for at kontrollere kernefunktionaliteten i applikationen for at udsætte små fejl og for at evaluere en builds styrke. Vi kan også teste API'erne uden en brugergrænseflade.
Forbedret testdækning: De fleste API'er har funktioner, der gør det muligt for en tester at oprette med høj testdækning inklusive positive og negative tilfælde. Vi kan sjældent finde testsager, der ikke kan automatiseres.
Reducer testomkostninger: Med API-test kan vi finde mindre fejl før GUI-testen. Normalt bliver disse mindre fejl større under GUI-test. Så det er omkostningseffektivt at finde disse fejl, mens du udfører API-test.
Aktiverer hurtigere udgivelser: Det der tager cirka 8-10 timer, når udførelse af UI-regressionstest kun tager cirka 1-2 timer med API-test. Dette giver virksomheder mulighed for at frigive bygninger hurtigere med API-test.
Så API-test er en virkelig vigtig fase af testprocessen. Men hvordan udføres API-test? Er der en specifik procedure?
Hvordan udføres API-test?
Nedenfor er de trin, du kan følge for at udføre API-test:
API Specification Review
Det første trin er at dokumentere kravene til API-test. Hvad er formålet med API'en? Hvad er applikationens arbejdsgang? Hvilke integrationer understøttes af API'en? Hvad er funktionerne i API'en? Dokumentation af alle disse API-testkrav er den første ting, du skal gøre. Dette hjælper dig med at planlægge API-test gennem testprocessen.
Opsætning af testmiljø
Næste trin er at oprette et testmiljø med det krævede sæt parametre omkring API'en. Dette indebærer konfiguration af databasen og serveren til applikationskravene.
Integrering af applikationsdata
I dette trin skal du kombinere dine applikationsdata med API-testene for at sikre, at API'en fungerer som forventet i forhold til alle mulige inputkonfigurationer.
Beslutningstype for API-test
Når du har oprettet testgrænser og krav, skal du beslutte, hvad du vil teste din API for. Der er forskellige typer API-tests som funktionstest, valideringstest, belastningstest, sikkerhedstest, end-to-end-test, fuzz-test og mange flere. Mere om API-testtyper i den næste session i denne artikel.
Tekstudførelse og rapportering
Når du først har besluttet dig for, hvad API'en skal testes for, er det næste trin naturligvis at oprette testcases omkring de krav og udføre dem. En grundlæggende retningslinje er at identificere de mest almindelige parametre og betingelser, som en slutudvikler vil bruge, når han ringer til API'erne og tester disse scenarier udførligt. Og dokumenter derefter testresultaterne til videre brug.
Nå, du kan følge ovenstående trin for at kunne teste API'er. Et af de vigtige trin under udførelsen af API-test er at beslutte, hvilken type test du vil udføre. Til det skal du være opmærksom på typerne af API-test. Lad os tjekke dem ud næste i denne artikel 'Hvad er API-test'.
Typer af API-test
I API-test kan følgende typer test udføres:
- Funktionstest - At kontrollere, om API'en fungerer og gør nøjagtigt, hvad den skal gøre
- Pålidelighedstest - At kontrollere, om API konsekvent kan forbindes til og føre til ensartede resultater
- Valideringstest - Hjælper med at verificere aspekterne af et API, adfærd og effektivitet
- Load Testing - Udføres for at sikre API'ens ydeevne under både normale og maksimale forhold
- UI Testing - Det involverer test af brugergrænsefladen til API og andre integrerede dele
- Sikkerhedstest - At teste, at API'en er sikker mod alle mulige eksterne trusler
- Penetration Testing - At opdage sårbarheder i en applikation fra et angribers perspektiv
- Fuzz Testing - At teste API'et med hensyn til grænserne for at forberede sig på 'worst case scenarier'
Nå, disse er de hyppigst udførte API-testtyper. Hvad prøver du at teste for ved at udføre disse tests? Hvad finder du?
Du tjekker efter:
- Kopi eller manglende funktionalitet
- Forkert besked
- Fejlhåndteringsmekanisme er inkompatibel
- Problemer med flere tråde
- Sikkerhed, ydeevne og sikkerhedsspørgsmål
- Problemer med pålidelighed
Da API-test vinder popularitet, har vi mange værktøjer til rådighed til det samme. Denne artikel 'Hvad er API-testning?' Viser nogle populære API-testværktøjer til din reference.
navneområder i c ++
API-testværktøjer
For at udføre API-test med succes skal du bruge et værktøj til at strukturere og administrere dine testsager. Her er nogle af de bedste API-testværktøjer, der kan bruges til og sæbe API:
SoapUI: Det er det mest populære open source-værktøj til API-test. Med SopaUI kan du udføre funktionel test, performance test, sikkerhedstest og datadrevet test. Det giver dig rapporterne til test og giver dig mulighed for at eksportere dataene.
Postbud: Med mere end 4 millioner brugere over hele verden er det et af de mest populære API-testværktøjer. Det kører på Mac-, Windows-, Linux- og Chrome-apps. Giver dig mulighed for at konfigurere alle de overskrifter og cookies, som din API forventer, og derefter kontrollere svaret.
Katalogstudie: Det er et robust og omfattende automatiseringsværktøj til API, Web og . Giver nem implementering ved at inkludere alle rammer, ALM-integrationer og plugins i en pakke. Understøtter også både SOAP- og REST-anmodninger, understøtter også forskellige typer kommandoer og parametreringsfunktioner.
Tricentis Tosca: Det er et modelbaseret test API-automatiserings testværktøj fra Tricentis, men understøtter også API-test. Det understøtter en bred vifte af protokoller, herunder HTTP (er) JMS, SOAP, REST, IBM MQ, NET TCP osv.
Stol trygt på: Det er et open source Java Domain-specific language (DSL) værktøj, der gør test af REST-service enkel. Understøtter XML- og JSON-anmodninger. Dette værktøj forenkler tingene ved at eliminere behovet for at bruge kedelpladekode til at teste og validere komplekse svar.
Bortset fra disse populære værktøjer er der også værktøjer som Apache JMeter, HttpMaster, Parasoft, HP QTP, Karate DSL og mange andre. Selvom disse værktøjer gør API-test let, kan du stadig støde på nogle udfordringer, mens du udfører API-test.
Udfordringer ved API-test
- Der er ingen GUI, hvilket vil gøre det vanskeligt for testere at give inputværdier
- Administration af testsager er vanskelig, da en tester muligvis skal håndtere millioner af testsager
- Testeren skal have ekspertise inden for de programmeringssprog, der er målrettet af API'en
- Tidskrævende kræver meget tid og ressourcer til at udvikle værktøjer og designtest
- Forkert dokumentation vil gøre det vanskeligt for en testdesigner at forstå formålet med API-opkald
- Korrekt opkaldssekventering er påkrævet, da dette kan føre til utilstrækkelig dækning ved testning
- Undtagelseshåndteringsfunktioner skal testes grundigt
Uanset hvilke udfordringer vi kan støde på, er API-test ret afgørende og meget krævet. Hvis en API går i stykker, fordi der ikke blev registreret fejl, er der truslen om ikke kun at bryde en enkelt applikation, men en hel kæde af forretningsprocesser, der er hængslet til den. Med dette har vi nået slutningen af denne artikel 'Hvad er API-testning?'.
Hvis du fandt dette “Hvad er API-test? ”Artikel relevant, tjek den live-online af Edureka, et pålideligt online læringsfirma med et netværk på mere end 250.000 tilfredse elever spredt over hele kloden.
Har du et spørgsmål til os? Nævn det i kommentarfeltet i denne 'Hvad er API-test?' artikel, og vi vender tilbage til dig.