Hva er regresjonstesting? Definisjon, testtilfeller (eksempel)

Innholdsfortegnelse:

Anonim

Hva er regresjonstesting?

REGRESSION TESTING er definert som en type programvaretesting for å bekrefte at et nylig program- eller kodeendring ikke har påvirket eksisterende funksjoner negativt.

Regresjonstesting er ingenting annet enn et fullstendig eller delvis utvalg av allerede utførte testtilfeller som blir utført på nytt for å sikre at eksisterende funksjonalitet fungerer bra.

Denne testingen er gjort for å sikre at nye kodeendringer ikke skal ha bivirkninger på eksisterende funksjonalitet. Det sørger for at den gamle koden fortsatt fungerer når de siste kodeendringene er gjort.

I denne opplæringen vil vi lære

  • Behov for regresjonstesting
  • Hvordan gjøre regresjonstesting
  • Velge testsaker for regresjonstesting
  • Verktøy for regresjonstesting
  • Regresjonstesting og konfigurasjonsadministrasjon
  • Forskjellen mellom omprøving og regresjonstesting
  • Utfordringer i regresjonstesting
  • Praktisk anvendelse av eksempel på regresjonstesting med en video

Behov for regresjonstesting

Den Behov for regresjonstesting oppstår hovedsakelig når det er behov for å endre koden, og vi trenger å teste om den modifiserte koden påvirker den andre delen av programmet eller ikke. Videre er regresjonstesting nødvendig når en ny funksjon legges til i programvaren og for å fikse feil samt fikse ytelsesproblemer.

Hvordan gjøre regresjonstesting

For å kunne gjøre en regresjonstestprosess , må vi først feilsøke koden for å identifisere feilene. Når feilene er identifisert, blir nødvendige endringer gjort for å fikse det, og deretter gjøres regresjonstesten ved å velge relevante testtilfeller fra testpakken som dekker både modifiserte og berørte deler av koden.

Programvarevedlikehold er en aktivitet som inkluderer forbedringer, feilretting, optimalisering og sletting av eksisterende funksjoner. Disse endringene kan føre til at systemet fungerer feil. Derfor blir regresjonstesting nødvendig. Regresjonstesting kan utføres ved hjelp av følgende teknikker:

Test alle på nytt

  • Dette er en av metodene for regresjonstesting der alle testene i den eksisterende testbøtta eller suiten skal utføres på nytt. Dette er veldig dyrt siden det krever enorm tid og ressurser.

Valg av regresjonstest

Regression Test Selection er en teknikk der noen utvalgte testtilfeller fra testpakke utføres for å teste om den modifiserte koden påvirker programvareapplikasjonen eller ikke. Testtilfeller er kategorisert i to deler, gjenbrukbare testtilfeller som kan brukes i ytterligere regresjonssykluser og foreldede testtilfeller som ikke kan brukes i påfølgende sykluser.

Prioritering av testsaker

  • Prioriter testtilfellene avhengig av virksomhetspåvirkning, kritiske og ofte brukte funksjoner. Valg av testsaker basert på prioritering vil i stor grad redusere regresjonstestpakken.

Velge testsaker for regresjonstesting

Det ble funnet av bransjedata at et stort antall feil rapportert av kunder skyldtes feilreaksjoner i siste øyeblikk som skapte bivirkninger, og det er derfor en art og ikke så lett å velge Test Case for regresjonstesting. Effektive regresjonstester kan gjøres ved å velge følgende testtilfeller -

  • Test tilfeller som har hyppige mangler
  • Funksjoner som er mer synlige for brukerne
  • Test tilfeller som verifiserer kjernefunksjonene i produktet
  • Test tilfeller av funksjonaliteter som har gjennomgått flere og nylige endringer
  • Alle tilfeller for integrasjonstester
  • Alle komplekse testtilfeller
  • Grenseverditesttilfeller
  • Et utvalg av vellykkede testtilfeller
  • Et utvalg av feiltilfeller

Verktøy for regresjonstesting

Hvis programvaren din gjennomgår hyppige endringer, vil kostnadene for regresjonstesting eskalere. I slike tilfeller øker manuell utførelse av testsaker testutførelsestid samt kostnader. Automatisering av tilfeller med regresjonstest er det smarte valget i slike tilfeller. Omfanget av automatisering avhenger av antall testtilfeller som forblir gjenbrukbare for påfølgende regresjonssykluser.

Følgende er de viktigste verktøyene som brukes til både funksjonell og regresjonstesting innen programvareteknikk:

Selen : Dette er et open source-verktøy som brukes til å automatisere webapplikasjoner. Selen kan brukes til nettleserbasert regresjonstesting.

Quick Test Professional (QTP) : HP Quick Test Professional er automatisert programvare designet for å automatisere funksjonelle og regresjonstesttilfeller. Den bruker VBScript-språk for automatisering. Det er et datadrevet, søkeordbasert verktøy.

Rational Functional Tester (RFT) : IBMs rasjonelle funksjonelle tester er et Java-verktøy som brukes til å automatisere testtilfellene til programvare. Dette brukes primært til å automatisere tilfeller av regresjonstest, og det integreres også med Rational Test Manager.

Regresjonstesting og konfigurasjonsadministrasjon

Konfigurasjonsadministrasjon under regresjonstesting blir viktig i smidige miljøer der en kode endres kontinuerlig. For å sikre effektive regresjonstester, følg følgende:

  • Koder som regresjonstestes, bør være under et konfigurasjonsstyringsverktøy
  • Ingen endringer må tillates å kode under regresjonstestfasen. Regresjonstestkode må holdes immun mot utviklerendringer.
  • Databasen som brukes til regresjonstesting må isoleres. Ingen databaseendringer må tillates

Forskjellen mellom omprøving og regresjonstesting:

Retesting betyr å teste funksjonaliteten eller feilen igjen for å sikre at koden er løst. Hvis det ikke er løst, må Defect åpnes på nytt. Hvis det er løst, er Defekt lukket.

Regresjonstesting betyr å teste programvaren din når den gjennomgår en kodeendring for å sikre at den nye koden ikke har påvirket andre deler av programvaren.

Sjekk også ut den komplette listen over forskjeller her.

Utfordringer i regresjonstesting:

Følgende er de viktigste testproblemene for å gjøre regresjonstesting:

  • Med suksessive regresjonsløp blir testsuitene ganske store. På grunn av tids- og budsjettbegrensninger kan ikke hele regresjonstestpakken kjøres
  • Å minimere testpakken mens du oppnår maksimal testdekning er fortsatt en utfordring
  • Bestemmelse av hyppigheten av regresjonstester, dvs. etter hver endring eller hver build-oppdatering eller etter en haug med feilrettinger, er en utfordring.

Praktisk anvendelse av eksempel på regresjonstesting med en video

Klikk her hvis videoen ikke er tilgjengelig

Konklusjon:

En effektiv regresjonsstrategi, som sparer organisasjoner både tid og penger. I henhold til en av casestudiene innen banksektoren sparer regresjon opptil 60% tid i feilrettinger (som ville blitt fanget av regresjonstester) og 40% i penger