Statisk vs dynamisk test: Forskellen mellem dem
Forskellen mellem statisk og dynamisk testning
- Statisk test udføres uden at udføre programmet, mens dynamisk test udføres ved at udføre programmet.
- Statisk test kontrollerer koden, kravdokumenter og designdokumenter for at finde fejl, mens dynamisk test kontrollerer softwaresystemets funktionelle adfærd, hukommelse/CPU-brug og systemets overordnede ydeevne.
- Statisk test handler om forebyggelse af defekter, mens dynamisk test handler om at finde og rette fejlene.
- Statisk test udfører verifikationsprocessen, mens dynamisk test udfører valideringsprocessen.
- Statisk test udføres før kompilering, mens dynamisk test udføres efter kompilering.
- Statiske testteknikker er strukturelle og erklæringsdækkende, mens dynamiske testteknikker er grænseværdianalyse og ækvivalenspartitionering.
Hvad er statisk test?
Statisk test er en type softwaretest, hvor softwareapplikationen testes uden kodeudførelse. Manuelle eller automatiserede gennemgange af kode, kravdokumenter 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 manuelle eller automatiserede gennemgange af dokumenterne. Denne gennemgang udføres i en indledende testfase for at fange defekt tidligt STLC. Den gennemgår arbejdsdokumenter og giver revisionskommentarer. Det kaldes også ikke-udførelsestest eller verifikationstest.
Eksempler på arbejdsdokumenter-
- Kravspecifikationer
- Design dokument
- Source Code
- Testplaner
- Test Cases
- Test scripts
- Hjælp eller brugerdokument
- Websideindhold
Statiske testteknikker
- Uformel Reviews: Dette er en af den type anmeldelse, som 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.
- Teknisk Reviews: Et team bestående af dine kolleger gennemgår softwareproduktets tekniske specifikation og tjekker, om det er egnet til projektet. De forsøger at finde eventuelle uoverensstemmelser i de specifikationer og standarder, der følges. Denne anmeldelse koncentrerer sig hovedsageligt om den tekniske dokumentation relateret til softwaren såsom Test Strategy, Testplan og kravspecifikationsdokumenter.
- Går igennem: Forfatteren af arbejdsproduktet forklarer produktet til sit team. Deltagerne kan stille spørgsmål, hvis der er nogen. Et møde ledes af forfatteren. Scribe noterer anmeldelseskommentarer
- 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 defekter. Reviewers har en tjekliste til at gennemgå arbejdsprodukterne. De registrerer defekten og informerer deltagerne om at rette disse fejl.
- Statisk kode Revse: Dette er en systematisk gennemgang af softwarens kildekode uden at udføre koden. Den kontrollerer kodens syntaks, kodningsstandarder, kodeoptimering osv. Dette kaldes også white box test. Denne gennemgang kan foretages på et hvilket som helst tidspunkt under udviklingen.
Hvad er dynamisk test?
Under Dynamisk test, udføres en kode. Den kontrollerer softwaresystemets funktionelle opførsel, hukommelse/cpu-brug og systemets overordnede ydeevne. Deraf 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 outputtet med det forventede resultat. Dynamisk test udføres på alle niveauer af test, og det kan være enten sort eller hvid boks test.
Dynamiske testteknikker
- Enhedstest: Under Enhedstest, individuelle enheder eller moduler testes af udviklerne. Det involverer test af kildekode af udviklere.
- Integrationstest: Individuelle moduler er grupperet sammen og testet af udviklerne. Formålet er at bestemme, hvilke moduler der fungerer som forventet, når de er integreret.
- Systemtest: Systemtest udføres på hele systemet ved at kontrollere, om systemet eller applikationen opfylder kravspecifikationsdokumentet.
Også ikke-funktionel test som ydeevne, Sikkerhedstest falder ind under kategorien dynamisk test.
Statisk test vs. Dynamisk test
Statisk test | Dynamisk test |
---|---|
Test blev udført uden at køre programmet | Test udføres ved at køre programmet |
Denne test udfører verifikationsprocessen | 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 en proces, der skal følges | Dynamisk test involverer testcases til udførelse |
Denne test kan udføres før kompilering | Dynamisk test udføres efter kompilering |
Statisk prøvning dækker strukturel og erklæringsdækningstest | Dynamiske testteknikker er Boundary Value Analysis & Equivalence Partitioning. |
Omkostningerne ved at finde fejl og reparere er mindre | Omkostningerne til at finde og rette defekter er høje |
Investeringsafkastet vil være højt, da denne proces involverede på et tidligt tidspunkt | Investeringsafkastet vil være lavt, som denne proces indebærer efter udviklingsfasen |
Flere anmeldelser kommentarer anbefales stærkt for god kvalitet | Flere defekter anbefales stærkt for god kvalitet. |
Kræver masser af møder | Forholdsvis kræver mindre møder |