Hva er utholdenhetstesting ved programvaretesting? (med eksempel)

Innholdsfortegnelse:

Anonim

Utholdenhetstesting

Utholdenhetstesting er ikke-funksjonell type programvaretesting der en programvare blir testet med høy belastning utvidet over en betydelig tid for å evaluere oppførselen til programvaren under vedvarende bruk. Hovedformålet med utholdenhetstesting er å sikre at applikasjonen er i stand til å håndtere utvidet belastning uten forringelse av responstid.

Denne typen testing utføres i siste trinn av ytelsessyklusen. Utholdenhetstesting er en lang prosess og varer noen ganger i opptil ett år. Dette kan omfatte bruk av eksterne belastninger som internettrafikk eller brukerhandlinger. Dette gjør at utholdenhetstesting avviker fra belastningstesting, som vanligvis slutter om et par timer eller så.

Utholdenhet betyr kapasitet, så med andre ord, du kan betegne utholdenhetstesting som kapasitetstesting.

I denne veiledningen vil du lære-

  • Hva er utholdenhetstesting?
  • Mål for utholdenhetstesting
  • Hva du skal overvåke i utholdenhetstesting
  • Hvordan utføre utholdenhetstesting
  • Eksempel på utholdenhetstesting
  • Endurance Testing Tools
  • Fordeler med utholdenhetstesting
  • Ulemper ved utholdenhetstesting

Mål for utholdenhetstesting

  • Hovedmålet med utholdenhetstesting er å se etter minnelekkasjer.
  • For å oppdage hvordan systemet fungerer under vedvarende bruk.
  • For å sikre at systemets responstid forblir den samme eller bedre enn starten av testen etter en lang periode.
  • For å bestemme antall brukere og / eller transaksjoner vil et gitt system støtte og oppfylle ytelsesmålene.
  • For å håndtere fremtidige belastninger, må vi forstå hvor mange ekstra ressurser (som prosessorkapasitet, diskkapasitet, minnebruk eller nettverksbåndbredde) som er nødvendige for å støtte bruken i fremtiden.
  • Utholdenhetstesting gjøres vanligvis ved å enten overbelaste systemet eller ved å redusere visse systemressurser og evaluere konsekvensene.
  • Det utføres for å sikre at mangler eller minnelekkasjer ikke oppstår etter det som anses å være en relativt "normal" bruksperiode.

Hva du skal overvåke i utholdenhetstesting

I utholdenhetstesting blir følgende ting testet.

  • Test minnelekkasje - Sjekker gjøres for å verifisere om det er minnelekkasje i applikasjonen, noe som kan forårsake krasj i systemet eller operativsystemet
  • Test forbindelseslukkingen mellom laget av systemet - Hvis forbindelsen mellom lagene i systemet ikke er lukket, kan det stoppe noen eller alle modulene i systemet.
  • Test databasetilkobling lukkes vellykket - Hvis databasetilkoblingen ikke er lukket, kan det føre til systemkrasj
  • Testens responstid - Systemet testes for responstiden til systemet ettersom applikasjonen blir mindre effektiv som et resultat av langvarig bruk av systemet.

Hvordan utføre utholdenhetstesting

Nedenfor er den grunnleggende testmetoden for utholdenhetstest

  • Testmiljø - Identifiser maskinvaren, programvaren, operativsystemkravene for utholdenhetstesting, tildele roller og ansvar i teamet osv. Miljøet skal være klart før testutførelsen. Du må også estimere felles databaseproduksjonsstørrelse og årlig vekst. Dette kreves som sådan, du må teste hvordan søknaden din vil svare etter et år, to eller fem.
  • Opprette testplan, scenarier - Basert på testens art - manuell eller automatisering eller kombinasjon av begge, skal testkassedesign, gjennomgang og utførelse planlegges. Testing for å stresse systemet, brytepunkttesting osv. Bør også være en del av testplanen. Testing for å stresse systemet bestemmer bruddpunktet i applikasjonen.
  • Testestimering - Gi estimering av hvor lang tid det vil ta å fullføre testfasen. Det bør analyseres på grunnlag av et antall involverte testere og antall testsykluser som kreves.
  • Risikoanalyse - Analysere risikoen og ta passende tiltak for å forebygge. Prioritering av testtilfeller i henhold til risikofaktoren og identifiser nedenstående risiko- og problemtester kan fase under utholdenhetstesten.
    • Vil ytelsen forbli jevn over tid?
    • Er det andre mindre problemer som ennå ikke har blitt oppdaget?
    • Er det eksterne forstyrrelser som ikke ble adressert?
  • Testplan - Bestem budsjett, leveranser innen tidsrammer. Som Endurance Testing bruker en enorm, men naturlig belastning av transaksjoner på systemet / applikasjonen i en kontinuerlig periode.

Eksempel på utholdenhetstesting

Mens stresstesting tar det testede systemet til sitt ytterste, tar utholdenhetstesting applikasjonen til sin grense over tid .

For eksempel skjer de mest komplekse problemene - minnelekkasjer, bruk av databaseserver og system som ikke svarer - når programvaren kjører over lengre tid. Hvis du hopper over utholdenhetstestene, er sjansene dine for å oppdage slike feil før utplassering ganske lave.

Endurance Testing Tools

  • WebLOAD
  • LoadComplete
  • Apache JMeter
  • LoadRunner
  • Fremgang
  • LoadUI
  • OpenSTA
  • Rasjonell ytelsestester

Fordeler med utholdenhetstesting

  • Det hjelper med å bestemme hvordan arbeidsbelastningen kan håndteres av systemet under belastning.
  • Tilbyr nøyaktige data som kunden kan bruke for å validere eller forbedre infrastrukturbehovene sine.
  • Identifiserer ytelsesproblemer som kan oppstå etter at et system har kjørt på høyt nivå i lengre tid
  • Typiske problemer identifiseres i mindre målrettede ytelsestester, noe som betyr at det sikrer at applikasjonen forblir tilgjengelig selv når det er stor belastning på veldig kort tid.
  • Utholdenhetstesten brukes også til å sjekke om det er prestasjonsforringelse etter en lang periode med utførelse

Ulemper ved utholdenhetstesting

  • Det er ofte vanskelig å definere hvor mye stress det er verdt å bruke.
  • Utholdenhetstesting kan forårsake applikasjons- og / eller nettverksfeil som kan føre til betydelig forstyrrelse hvis testmiljøet ikke er isolert.
  • Permanent datatap eller korrupsjon kan oppstå ved å overbelaste systemet.
  • Ressursutnyttelsen forblir veldig høy etter at stresset er fjernet.
  • Noen applikasjonskomponenter reagerer ikke.
  • Ubehandlede unntak blir observert av sluttbrukeren.

Sammendrag:

  • I programvareteknikk er utholdenhetstesting en delmengde av belastningstesting.
  • Utholdenhetstesting er en lang prosess og varer noen ganger i opptil ett år
  • Sjekker gjøres for å verifisere
    • Test minnelekkasje
    • Test responstid
    • Test databaseforbindelse, etc.

Denne artikkelen er mulig på grunn av bidrag fra Unnati Soni.