Stabilitetstesting i programvaretesting

Stabilitetstesting

Stabilitetstesting er en type ikke-funksjonell programvaretesting utfรธrt for รฅ mรฅle effektiviteten og evnen til en programvareapplikasjon til รฅ fungere kontinuerlig over lang tid. Hensikten med stabilitetstesting er รฅ sjekke om programvareapplikasjonen krasjer eller feiler ved normal bruk pรฅ et hvilket som helst tidspunkt ved รฅ bruke hele bruksomrรฅdet.

Stabilitetstesting utfรธres for รฅ sjekke effektiviteten til et utviklet produkt utover normal driftskapasitet, ofte til et bruddpunkt. Det er stรธrre betydning for feilhรฅndtering, programvarepรฅlitelighet, robusthet og skalerbarhet til et produkt under stor belastning i stedet for รฅ kontrollere systemets oppfรธrsel under normale omstendigheter.

Stabilitetstesting vurderer stabilitetsproblemer. Denne testingen er fรธrst og fremst ment รฅ stresse programvarekomponenten maksimalt. Det er en ikke-funksjonell teknikk.

Stabilitetstesting
Stabilitetstesting

Stabilitetstesting blir ogsรฅ referert til som en last eller utholdenhetstesting.

Risikoer hvis systemet som testes ikke har gjennomgรฅtt stabilitetstest

For en applikasjon som testes der et stort antall brukere introduseres og applikasjoner som mรฅ kjรธre i flere mรฅneder uten รฅ starte pรฅ nytt, vil det sannsynligvis oppstรฅ en rekke problemer:

Den mulige feilen kan mรธtes,

  • systemet bremser ned
  • systemet stรธter pรฅ funksjonsproblemer
  • systemet viser kablet oppfรธrsel
  • systemet krasjer totalt

I programvareteknikk, Stabilitetstesting involverer vanligvis รฅ trene systemet med tunge brukere (virtuelt) og mรฅle ytelsesparametrene for รฅ verifisere om systemet kan stรธtte den forventede belastningen.

Hvorfor gjรธre stabilitetstesting

Denne typen testing hjelper brukere med รฅ forstรฅ hvordan systemet vil fungere i virkelige situasjoner.

Derfor lar stabilitetstesting deg sjekke,

  • Gi tillit til stabiliteten til systemet ditt som testes.
  • Sรธrg for at systemet ditt kan hรฅndtere store programmer.
  • Overvรฅk effektiviteten til systemet ditt.
  • Test systemets stabilitet under stress.

Det spiller en viktig rolle i produktutvikling, da det brukes til รฅ bestemme begrensningene til et programvareprodukt som testes fรธr det utgis eller omrรฅdene med flere forbedringer fรธr produktet gรฅr live eller pรฅ produksjon.

Et veldig vanlig eksempel pรฅ stabilitetstestteknikk er

Online Shopping Portals: Stabilitetstesting vil sjekke hvordan nettstedet vil oppfรธre seg nรฅr โ€“

  • Hรธy mengde data som legges inn pรฅ topptid
  • Antall treff pรฅ et bestemt tidspunkt
  • Problem med sideinnlasting samtidig
  • Systemets oppfรธrsel
  • Responsen til systemet og mange flere kommer under Stabilitetstesting

Et annet eksempel

A prosessor test er en populรฆr form for stabilitetstest under Ytelsestesting teknikk. Denne testen sjekker prosessorstabilitet og overvรฅker ogsรฅ ytelsen nรฅr prosessorens arbeidsmengde รธkes.

Hvordan gjรธre stabilitetstesting

  • For รฅ bestemme omfanget og formรฅlet med testingen, mรฅ vi sรธrge for at applikasjonsserveren(e) ikke krasjer under kjรธringen av belastningstesten.
  • For รฅ fastslรฅ forretningsproblemene, kontroller systemytelsen og belastningen i henhold til sluttbrukerperspektivet.
  • For รฅ tildele ulike ansvarsomrรฅder og roller som -Opprette testplan, Testsak design, Test case review, Test utfรธrelse, etc.
  • For รฅ sikre at testen leverer innen den angitte tiden
  • For รฅ sikre riktig Load Testing verktรธy og erfaringsteam er tilstede for det samme.
  • ร… mรฅle risikoen og kostnadene som testingen innebรฆrer. Dette vil bestemme kostnadene for hver utfรธrelse i form av CPU-utnyttelse og minne.
  • Bestem Defekt trackonge og rapportering og deres riktige kartping med kravene.

Testtilfelle for stabilitetstesting for CPU-ytelse

  • For รฅ verifisere รธvre grense for systemet.
  • Hvordan systemet krasjer eller gjenoppretter.
  • Et totalt antall fullfรธrte transaksjoner per forespรธrsel.
  • Hvorvidt transaksjonsresponsen holder seg stabil eller รธker over tid.
  • Hvordan systemet oppfรธrer seg under stor belastning.
  • Dens respons og oppfรธrsel under tung belastning.

Testrapporter for stabilitetstesting

Flere statistikker samles inn og mรฅles under testutfรธrelser; disse tallene analyseres for รฅ generere en rapport og identifisere mulige ytelsesproblemer.

Eksempler pรฅ statistikk samlet inn under test er:

  • Transaksjonsresponstider: Gjennomsnittlig tid det tar รฅ utfรธre transaksjoner under testen. Denne statistikken vil evaluere om ytelsen til serveren er innenfor de akseptable minimums- og maksimumsperiodene for transaksjonsytelse som er definert for systemet. Denne informasjonen vil evaluere tiden det tar รฅ behandle forespรธrselen av webserveren og sendes til applikasjonsserveren, som i de fleste tilfellene vil sende en forespรธrsel til en databaseserver.
  • Treff per sekund: Antall treff gjort pรฅ serveren av brukere. Denne statistikken er nyttig for รฅ bestemme antall belastninger som brukere genererer, med hensyn til et antall treff.
  • gjennomlรธp: Mengden gjennomstrรธmning pรฅ webserveren under testen som mรฅles i byte. Gjennomstrรธmming betyr mengden data som brukerne mottok fra serveren til enhver tid. Denne statistikken hjelper til med รฅ evaluere mengden belastning brukerne genererer.
  • Transaksjon per sekund: Dette er det totale antallet fullfรธrte transaksjoner (bรฅde vellykkede og mislykkede) utfรธrt under en test. Denne statistikken hjelper til med รฅ kontrollere den faktiske transaksjonsbelastningen pรฅ systemet.
  • CPU: CPU prosentvis utnyttelse brukt under en test.
  • Minne: Minnebruk under en test.
  • Disk: utnyttelse av diskplass brukt under en test.

Grunnleggende om stabilitetstesting

Stabilitetstesting kommer under ytelsestesting โ€“ en teknikk som utfรธres for รฅ sjekke noen av kvalitetsattributtene til programvare som stabilitet, pรฅlitelighet og tilgjengelighet.

Denne testen brukes til รฅ bestemme hvor raskt et system eller delsystem yter under en bestemt arbeidsbelastning.

Ytelsestesting har mange typer og stabilitetstesting er en av dem.

  • Stresstesting: Det er en testtype som sjekker robustheten til systemet utover systemkapasiteten.
  • Piggtesting: Den brukes til รฅ sjekke oppfรธrselen til et system ved รฅ รธke belastningen pรฅ et system umiddelbart. Mรฅlet er รฅ sjekke pรฅ hvilket tidspunkt systemet vil ha ytelsesproblemer, eller det vil passere.
  • Skalerbarhetstesting: Den brukes til รฅ sjekke funksjonene til et system. Hvor effektivt systemet vil oppfรธre seg i รธkende behov, endring i stรธrrelse og endring i volum.
  • Volumtesting: Det er en ikke-funksjonell testteknikk der programvare som testes blir utsatt for et stort datavolum, og oppfรธrselen til et system blir kontrollert og verifisert deretter.
  • Last- eller stabilitetstesting: (allerede diskutert ovenfor)

Verktรธy for stabilitetstesting

Noen av verktรธyene for ytelsestesting er som โ€“

  • WebLOAD
  • Loadrunner
  • Apache JMeter
  • NeoLaste
  • CloudTest
  • Laststorm
  • LoadUI
  • WAPT
  • LoadImpact
  • Lastemaskin
  • Httperf
  • OpenSTA

Konklusjon

Stabilitetstesting er en ikke-funksjonell prosess for รฅ teste oppfรธrselen til applikasjonen ved รฅ bruke maksimal belastning. Det utfรธres for รฅ finne ut skalerbarheten til systemet i et gitt miljรธ.

Oppsummer dette innlegget med: