Nøkkelforskjell: Statisk testing er testing som skjer selv før den skrevne koden til programvaren er utført. Dynamisk testing skjer i et run-time-miljø, noe som betyr at koden utføres med sikkerhetsanalyse for å se hvordan den går.

Statisk testing er testing som skjer selv før den skrevne koden til programvaren er utført. Utvikleren får muligheten til å gå gjennom kodingen med en fin tannkam for å se om det er noen feil. Det gjør det også mulig for dem å se om kodene overholder lokale lover. Statisk testing oppdager feil og gir utvikleren rettelse for dem før utførelsen skjer. I noen tilfeller kan utvikleren også identifisere noen ondsinnet kode som kan forårsake problemer under utførelsen. Statisk testing blir ofte referert til som verifikasjon: evalueringen av utviklingsprosessen.

Sammenligning mellom Statisk og Dynamisk Testing:
Statisk testing | Dynamisk testing | |
Henrettelse | Skje uten kjøring av kode | Involver kjøring av koden |
Undersøkelse | Undersøkt manuelt eller noen statisk analyseverktøy brukes | Undersøkt ved å gi et sett av innganger, så se om utgangen samsvarer med de forventede resultatene |
Tid | Testing skjer tidlig før utviklingen av produktet har til og med begynt | Skje etter at produktet har blitt utviklet |
Typer av feil | Manglende krav, Designdefekt, syntaksfeil, etc. | Variabler ikke konstant, kontroller om utgangen stemmer overens med forventede verdier |
Testteknikker | Uformelle anmeldelser, tekniske anmeldelser, gjennomgang, inspeksjon, statisk kodeanmeldelse | Enhetstesting, Integrasjonstesting, Systemtesting |
Compilation | Finn feil før kompilering | Finn feil etter kompilering |
Type | Forebygging | Kurere |
Koste | Er mer kostnadseffektiv | Er forholdsvis dyrere |
Scene | Utført i verifikasjonsfasen | Utført i valideringsfasen |
Tid | Er mindre tidkrevende | Er mer tidkrevende |
Image Courtesy: qcboss.wordpress.com, guru99.com