Statisk test vs dynamisk test: Hvad er forskellen?

Indholdsfortegnelse:

Anonim

Hvad er statisk testning?

Statisk testning er en type softwaretest, hvor softwareapplikation testes uden kodeudførelse. Manuel eller automatiseret gennemgang af kode, kravsdokumenter og dokumentdesign udføres for at finde fejlene. Hovedformålet med statisk test er at forbedre kvaliteten af ​​softwareapplikationer ved at finde fejl i de tidlige stadier af softwareudviklingsprocessen.

Statisk test involverer manuel eller automatiseret gennemgang af dokumenterne. Denne gennemgang foretages i en indledende fase af test for at fange Defect tidligt i STLC. Det undersøger arbejdsdokumenter og giver gennemgangskommentarer. Det kaldes også ikke-udførelsestest eller verifikationstest.

Eksempler på arbejdsdokumenter-

  • Kravspecifikationer
  • Design dokument
  • Kildekode
  • Testplaner
  • Test tilfælde
  • Test scripts
  • Hjælp eller brugerdokument
  • Websides indhold

Hvad er dynamisk test?

Under dynamisk test udføres en kode. Det kontrollerer for funktionel opførsel af softwaresystem, hukommelse / CPU-brug og systemets samlede ydeevne. Derfor navnet "Dynamisk"

Hovedformålet med denne test er at bekræfte, at softwareproduktet fungerer i overensstemmelse med forretningskravene. Denne test kaldes også en udførelsesteknik eller valideringstest.

Dynamisk test udfører softwaren og validerer output med det forventede resultat. Dynamisk test udføres på alle testniveauer, og det kan enten være sort eller hvid boks test.

Nøgleforskel

  • Statisk test blev udført uden at udføre programmet, mens dynamisk test udføres ved at udføre programmet.
  • Statisk test kontrollerer koden, kravsdokumenterne og designdokumenterne for at finde fejl, mens dynamisk test kontrollerer softwaresystemets funktionelle opførsel, hukommelse / CPU-brug og systemets samlede ydeevne.
  • Statisk test handler om forebyggelse af mangler, mens dynamisk test handler om at finde og rette manglerne.
  • Statisk test udfører verificeringsprocessen, mens dynamisk test udfører valideringsprocessen.
  • Statisk test udføres før kompilering, mens dynamisk test udføres efter kompilering.
  • Statiske testteknikker er strukturel og udsagnsdækning, mens dynamiske testteknikker er grænseværdianalyse og ækvivalenspartitionering.

Statiske testteknikker:

  • Uformelle anmeldelser: Dette er en af ​​den type anmeldelse, der ikke følger nogen proces for at finde fejl i dokumentet. Under denne teknik gennemgår du bare dokumentet og giver uformelle kommentarer til det.
  • Tekniske anmeldelser: Et team bestående af dine jævnaldrende, gennemgår den tekniske specifikation af softwareproduktet og kontrollerer, om det er egnet til projektet. De forsøger at finde uoverensstemmelser i de specifikationer og standarder, der følges. Denne gennemgang koncentrerer sig hovedsageligt om den tekniske dokumentation relateret til softwaren såsom teststrategi, testplan og kravspecifikationsdokumenter.
  • Gennemgang: Forfatteren af ​​arbejdsproduktet forklarer produktet til sit team. Deltagerne kan stille spørgsmål, hvis nogen. Et møde ledes af forfatteren. Scribe noterer sig kommentarerne
  • Inspektion: Hovedformålet er at finde mangler, og mødet ledes af en uddannet moderator. Denne anmeldelse er en formel type anmeldelse, hvor den følger en streng proces for at finde manglerne. Bedømmere har en tjekliste til gennemgang af arbejdsprodukterne. De registrerer manglen og informerer deltagerne om at rette op på disse fejl.
  • Statisk kode gennemgang: Dette er en systematisk gennemgang af softwarekildekoden uden at udføre koden. Den kontrollerer syntaks for koden, kodningsstandarder, kodeoptimering osv. Dette kaldes også test af hvidboks. Denne gennemgang kan gøres på ethvert tidspunkt under udviklingen.

Dynamiske testteknikker:

  • Enhedstest: Under Enhedstest testes individuelle enheder eller moduler af udviklerne. Det involverer test af kildekode af udviklere.
  • Integrationstest: Individuelle moduler grupperes sammen og testes af udviklerne. Formålet er at bestemme, hvilke moduler der fungerer som forventet, når de først er integreret.
  • Systemtest: Systemtest udføres på hele systemet ved at kontrollere, om systemet eller applikationen opfylder kravspecifikationsdokumentet.

Ikke-funktionel test som ydelse, sikkerhedstest falder også under kategorien dynamisk test.

Forskel mellem statisk og dynamisk test:

Statisk testning

Dynamisk test

Test blev udført uden at programmet blev udført Test udføres ved at udføre programmet
Denne test udfører verificeringsprocessen Dynamisk test udfører valideringsprocessen
Statisk test handler om forebyggelse af defekter Dynamisk test handler om at finde og rette fejlene
Statisk test giver en vurdering af kode og dokumentation Dynamisk test giver fejl / flaskehalse i softwaresystemet.
Statisk test involverer en tjekliste og proces, der skal følges Dynamisk test involverer testsager til udførelse
Denne test kan udføres inden kompilering Dynamisk test udføres efter kompilering
Statisk test dækker testning af strukturelle og erklæringsdækninger Dynamiske testteknikker er Boundary Value Analysis & Equivalence Partitioning.
Omkostningerne ved at finde fejl og afhjælpe er mindre Omkostningerne ved at finde og rette mangler er høje
Investeringsafkastet vil være højt, da denne proces involveres på et tidligt tidspunkt Investeringsafkastet vil være lavt, da denne proces involverer efter udviklingsfasen
Flere anmeldelser kommentarer anbefales til god kvalitet Flere fejl anbefales stærkt for god kvalitet.
Kræver masser af møder Kræver forholdsvis mindre møder