Hvad er udholdenhedstest i softwaretest? (med eksempel)

Udholdenhedstest

Udholdenhedstest er en ikke-funktionel type softwaretest, hvor en software testes med hรธj belastning over et betydeligt tidsrum for at evaluere softwareapplikationens adfรฆrd under vedvarende brug. Hovedformรฅlet med udholdenhedstest er at sikre, at applikationen er i stand nok til at hรฅndtere forlรฆnget belastning uden nogen forringelse af responstiden.

Denne type test udfรธres pรฅ det sidste trin af prรฆstationskรธrselscyklussen. Udholdenhedstest er en lang proces og varer nogle gange i op til et รฅr. Dette kan omfatte anvendelse af eksterne belastninger sรฅsom internettrafik eller brugerhandlinger. Dette gรธr at udholdenhedstest adskiller sig fra Load Testing, som normalt slutter om et par timer eller deromkring.

Udholdenhed betyder kapacitet, sรฅ med andre ord kan du betegne udholdenhedstest som Kapacitetstest.

Mรฅl for udholdenhedstestning

  • Det primรฆre mรฅl med udholdenhedstest er at kontrollere for hukommelseslรฆkager.
  • For at finde ud af, hvordan systemet fungerer under vedvarende brug.
  • For at sikre, at systemets responstid efter en lang periode forbliver den samme eller bedre end starten af โ€‹โ€‹testen.
  • For at bestemme antallet af brugere og/eller transaktioner vil et givet system understรธtte og opfylde prรฆstationsmรฅl.
  • For at styre de fremtidige belastninger skal vi forstรฅ, hvor mange ekstra ressourcer (sรฅsom processorkapacitet, diskkapacitet, hukommelsesforbrug eller netvรฆrksbรฅndbredde) er nรธdvendige for at understรธtte brugen i fremtiden.
  • Udholdenhedstest udfรธres generelt ved enten at overbelaste systemet eller ved at reducere visse systemressourcer og evaluere konsekvenserne.
  • Det udfรธres for at sikre, at defekter eller hukommelseslรฆkager ikke opstรฅr efter, hvad der anses for at vรฆre en relativt "normal" brugsperiode.

Hvad skal man overvรฅge i udholdenhedstest

Udholdenhedstest

I udholdenhedstestning testes fรธlgende ting.
  • Test hukommelseslรฆkage- Der udfรธres kontrol for at verificere, om der er nogen hukommelseslรฆkage i applikationen, som kan forรฅrsage nedbrud af systemet eller OS
  • Test forbindelseslukningen mellem systemets lag โ€“ Hvis forbindelsen mellem systemets lag ikke lukkes korrekt, kan det gรฅ i stรฅ, nogle eller alle systemets moduler.
  • Test databaseforbindelsen lukketโ€“ Hvis databaseforbindelsen ikke lukkes korrekt, kan det resultere i systemnedbrud
  • Test responstid โ€“ Systemet testes for systemets responstid, da applikationen bliver mindre effektiv som fรธlge af lรฆngere tids brug af systemet.

Sรฅdan udfรธres udholdenhedstest

Nedenfor er den grundlรฆggende testmetode for Endurance Test
  • Testmiljรธ โ€“ Identificer den hardware, software, operativsystem, der krรฆves til udholdenhedstestningen, tildeling af roller og ansvar i teamet osv. Miljรธet skal vรฆre klar fรธr testen udfรธres. Du skal ogsรฅ estimere fรฆlles databaseproduktionsstรธrrelse og รฅrlig vรฆkst. Dette er pรฅkrรฆvet, som sรฅdan skal du teste, hvordan din ansรธgning vil reagere efter et รฅr, to eller fem.
  • Oprettelse af testplanen, scenarier โ€“ Baseret pรฅ testens art โ€“ manuel eller automatisering eller kombination af begge, Test sag design, anmeldelser og udfรธrelse bรธr planlรฆgges. Test for at stresse systemet, brudpunktstest osv. bรธr ogsรฅ vรฆre en del af testplanen. Test for at stresse systemet bestemmer brudpunktet i applikationen.
  • Testvurdering โ€“ Giv et skรธn over, hvor lang tid det vil tage at fuldfรธre testfasen. Det bรธr analyseres pรฅ grundlag af et antal involverede testere og antallet af krรฆvede testcyklusser.
  • Risikoanalyse - Analysere risikoen og trรฆffe passende foranstaltninger til forebyggelse. Prioritering af testsager i henhold til risikofaktoren og identificer nedenstรฅende risiko- og problemer, testeren kan fase under udholdenhedstesten.
  • Vil ydeevnen forblive ensartet over tid?
  • Er der andre mindre problemer, som endnu ikke er blevet opdaget?
  • Er der ekstern interferens, som ikke blev rettet?
  • Testplan โ€“ Bestem budgettet, leverancer inden for tidsrammerne. Som Udholdenhedstest anvender et enormt, men naturligt belastningsarrangement af transaktioner pรฅ systemet/applikationen i en sammenhรฆngende periode.

Eksempel pรฅ udholdenhedstest

Mens Stresstest tager det testede system til dets grรฆnser, Udholdenhedstest tager applikationen til sin grรฆnse over tid. For eksempel sker de mest komplekse problemer - hukommelseslรฆkager, databaseserverudnyttelse og et system, der ikke reagerer - nรฅr software kรธrer i lรฆngere tid. Hvis du springer udholdenhedstestene over, er dine chancer for at opdage sรฅdanne defekter fรธr implementering ret lave.

Vรฆrktรธjer til udholdenhedstest

  • WebLOAD
  • Indlรฆsning fuldfรธrt
  • Apache JMeter
  • LoadRunner
  • Appvance
  • LoadUI
  • OpenSTA
  • Rational Performance Tester

Fordele ved udholdenhedstest

  • Det hjรฆlper med at bestemme, hvordan arbejdsbyrden kan hรฅndtere systemet under belastning.
  • Giver nรธjagtige data, som kunden kan bruge til at validere eller forbedre deres infrastrukturbehov.
  • Identificerer ydeevneproblemer, der kan opstรฅ efter et system har kรธrt pรฅ et hรธjt niveau i lรฆngere tid
  • Typiske problemer identificeres i mindre mรฅlrettede ydeevnetest, hvilket betyder, at det sikrer, at applikationen forbliver tilgรฆngelig, selv nรฅr der er stor belastning pรฅ meget kort tid.
  • Udholdenhedstesten bruges ogsรฅ til at kontrollere, om der er nogen prรฆstationsforringelse efter en lรฆngere periode med udfรธrelse

Ulemper ved udholdenhedstestning

  • Det er ofte svรฆrt at definere, hvor meget stress er vรฆrd at pรฅfรธre.
  • Udholdenhedstest kan forรฅrsage applikations- og/eller netvรฆrksfejl, der kan resultere i betydelige forstyrrelser, hvis Testmiljรธ er ikke isolerede.
  • Permanent datatab eller korruption kan opstรฅ ved at overbelaste systemet.
  • Ressourceudnyttelsen forbliver meget hรธj, efter at stressen er fjernet.
  • Nogle programkomponenter reagerer ikke.
  • Ubehandlede undtagelser observeres af slutbrugeren.

Resumรฉ

  • In Software Engineering, Udholdenhedstest er en delmรฆngde af belastningstest.
  • Udholdenhedstest er en lang proces og varer nogle gange i op til et รฅr
  • Der udfรธres kontrol for at verificere
  • Test hukommelseslรฆkage
  • Test responstid
  • Test databaseforbindelse osv.

Opsummer dette indlรฆg med: