Statisk vs dynamisk testning: skillnaden mellan dem

Skillnaden mellan statisk och dynamisk testning

  • Statisk testning görs utan att köra programmet medan dynamisk testning görs genom att köra programmet.
  • Statisk testning kontrollerar koden, kravdokument och designdokument för att hitta fel medan dynamisk testning kontrollerar mjukvarusystemets funktionella beteende, minne/CPU-användning och systemets övergripande prestanda.
  • Statisk testning handlar om att förebygga defekter medan dynamisk testning handlar om att hitta och åtgärda defekterna.
  • Statisk testning utför verifieringsprocessen medan dynamisk testning utför valideringsprocessen.
  • Statisk testning utförs före kompilering medan dynamisk testning utförs efter kompilering.
  • Statiska testtekniker är strukturella och uttalande täckning medan dynamiska testtekniker är Boundary Value Analysis & Equivalence Partitioning.

Skillnaden mellan statisk och dynamisk testning

Vad är statisk testning?

Statisk testning är en typ av mjukvarutestning där mjukvaruapplikationen testas utan kodexekvering. Manuella eller automatiserade granskningar av kod, kravdokument och dokumentdesign görs för att hitta felen. Huvudsyftet med statisk testning är att förbättra kvaliteten på mjukvaruapplikationer genom att hitta fel i tidiga stadier av mjukvaruutvecklingsprocessen.

Statisk testning innebär manuell eller automatiserad granskning av dokumenten. Denna granskning görs under en inledande fas av testning för att fånga defekter tidigt STLC. Den granskar arbetsdokument och ger granskningskommentarer. Det kallas också för icke-exekveringstestning eller verifieringstestning.

Exempel på arbetsdokument-

  • Kravspecifikationer
  • Designdokument
  • KÄLLKOD
  • Testplaner
  • Test Cases
  • Testa skript
  • Hjälp eller användardokument
  • Webbsidans innehåll

Statiska testtekniker

  • Informell Reviews: Detta är en av den typ av granskning som inte följer någon process för att hitta fel i dokumentet. Med denna teknik granskar du bara dokumentet och ger informella kommentarer om det.
  • Teknisk Reviews: Ett team bestående av dina kamrater, granskar den tekniska specifikationen för mjukvaruprodukten och kontrollerar om den är lämplig för projektet. De försöker hitta eventuella avvikelser i de specifikationer och standarder som följs. Denna recension koncentrerar sig huvudsakligen på den tekniska dokumentationen relaterad till programvaran såsom Test Strategy, Testplan och kravspecifikationsdokument.
  • genomgång: Författaren till arbetsprodukten förklarar produkten för sitt team. Deltagarna kan ställa frågor om några. Ett möte leds av författaren. Scribe noterar recensionskommentarer
  • Kontroll: Huvudsyftet är att hitta brister och mötet leds av en utbildad moderator. Denna granskning är en formell typ av granskning där den följer en strikt process för att hitta defekter. Reviewers har en checklista för att granska arbetsprodukterna. De registrerar defekten och informerar deltagarna om att åtgärda dessa fel.
  • Statisk kod Revvisa: Detta är en systematisk genomgång av programvarans källkod utan att exekvera koden. Den kontrollerar kodens syntax, kodningsstandarder, kodoptimering, etc. Detta kallas också för white box-testning. Denna granskning kan göras när som helst under utvecklingen.

Vad är dynamisk testning?

Enligt Dynamisk testning, exekveras en kod. Den kontrollerar funktionellt beteende hos mjukvarusystemet, minne/cpu-användning och systemets övergripande prestanda. Därav namnet "Dynamiskt"

Huvudsyftet med denna testning är att bekräfta att mjukvaruprodukten fungerar i enlighet med affärskraven. Denna testning kallas också en Execution-teknik eller valideringstestning.

Dynamisk testning kör programvaran och validerar utdata med det förväntade resultatet. Dynamisk testning utförs på alla testnivåer och det kan vara antingen svart eller vit box-testning.

Dynamisk testning

Dynamiska testtekniker

Dynamisk testning

  • Enhetstestning: Enligt Enhetstestning, individuella enheter eller moduler testas av utvecklarna. Det innebär testning av källkod av utvecklare.
  • Integrationstestning: Individuella moduler grupperas tillsammans och testas av utvecklarna. Syftet är att avgöra vilka moduler som fungerar som förväntat när de väl är integrerade.
  • Systemtestning: Kravhantering utförs på hela systemet genom att kontrollera om systemet eller applikationen uppfyller kravspecifikationsdokumentet.

Dessutom, icke-funktionella tester som prestanda, Säkerhetstestning faller under kategorin dynamisk testning.

Statisk testning vs. Dynamisk testning

Statisk testning Dynamisk testning
Testning gjordes utan att köra programmet Testning görs genom att köra programmet
Denna testning utför verifieringsprocessen Dynamisk testning gör valideringsprocessen
Statisk testning handlar om att förebygga defekter Dynamisk testning handlar om att hitta och åtgärda defekterna
Statisk testning ger en bedömning av kod och dokumentation Dynamisk testning ger buggar/flaskhalsar i mjukvarusystemet.
Statisk testning innebär en checklista och process som ska följas Dynamisk testning innebär testfall för utförande
Denna testning kan utföras före kompilering Dynamisk testning utförs efter sammanställning
Statisk testning täcker strukturella och uttalande täckningstestning Dynamiska testtekniker är Boundary Value Analysis & Equivalence Partitioning.
Kostnaden för att hitta defekter och åtgärda är mindre Kostnaden för att hitta och åtgärda defekter är höga
Avkastningen på investeringen kommer att vara hög eftersom denna process involverades i ett tidigt skede Avkastningen på investeringen kommer att vara låg eftersom denna process innebär efter utvecklingsfasen
Fler recensioner kommentarer rekommenderas starkt för god kvalitet Fler defekter rekommenderas starkt för god kvalitet.
Kräver massor av möten Kräver jämförelsevis mindre möten