Testdekking bij het testen van software

Wat is testdekking?

Testdekking wordt gedefinieerd als een maatstaf in Softwaretesten die de hoeveelheid tests meet die door een reeks tests wordt uitgevoerd. Het omvat het verzamelen van informatie over welke delen van een programma worden uitgevoerd tijdens het uitvoeren van de testsuite om te bepalen welke takken van voorwaardelijke instructies zijn genomen.

Simpel gezegd is het een techniek om ervoor te zorgen dat uw tests uw code testen, of hoeveel van uw code u hebt uitgeoefend door de test uit te voeren.

Wat doet Testdekking?

  • Het vinden van het gebied van een vereiste dat niet is geïmplementeerd door een reeks testgevallen
  • Helpt bij het creëren van extra testgevallen om de dekking te vergroten
  • Het identificeren van een kwantitatieve maatstaf voor de testdekking, wat een indirecte methode is voor kwaliteitscontrole
  • Het identificeren van betekenisloze testgevallen die de dekking niet vergroten

Hoe kan testdekking worden bereikt?

  • Testdekking kan worden gedaan door gebruik te maken van statische beoordelingstechnieken zoals peer reviews, inspecties en walkthrough
  • Door de ad-hocdefecten om te zetten in uitvoerbare testgevallen
  • Op codeniveau of unit-testniveau kan testdekking worden bereikt door gebruik te maken van de geautomatiseerde codedekkings- of unit-testdekkingstools
  • Functionele testdekking kan worden gedaan met behulp van de juiste testmanagementtools

Voordelen van testdekking in software-engineering

  • Het kan de kwaliteit van de test garanderen
  • Het kan helpen identificeren welke delen van de code daadwerkelijk zijn aangeraakt voor de release of oplossing
  • Het kan helpen om de paden in uw applicatie te bepalen die niet zijn getest
  • Voorkomen Defect lekkage
  • Tijd, omvang en kosten kunnen onder controle worden gehouden
  • Preventie van defecten in een vroeg stadium van de projectlevenscyclus
  • Het kan alle beslissingspunten en paden bepalen die in de applicatie worden gebruikt, waardoor u de testdekking kunt vergroten
  • Hiaten in eisen, testgevallen en defecten op unitniveau en codeniveau kunnen op een eenvoudige manier worden gevonden

Wat zijn de belangrijkste verschillen tussen codedekking en testdekking?

Code dekking en testdekking zijn meettechnieken waarmee u de kwaliteit van uw applicatiecode kunt beoordelen.

Hier volgen enkele cruciale verschillen tussen stands met deze dekkingsmethoden:

parameters Codedekking Testdekking
Definitie Codedekkingsterm die wordt gebruikt wanneer applicatiecode wordt uitgeoefend wanneer een applicatie actief is. Testdekking betekent een algemeen testplan.
Doel Metrieken voor codedekking kunnen het team helpen hun geautomatiseerde tests te monitoren. Met testdekking wordt gedetailleerd beschreven in hoeverre de schriftelijke codering van een applicatie is getest.
Subtypen Codedekking onderverdeeld in subtypes zoals verklaringdekking, voorwaardedekking, filiaaldekking, Toogle-dekking, FSM-dekking. Geen subtype van testdekkingsmethode.

Testdekkingsformule

Om de testdekking te berekenen, moet u de onderstaande stappen volgen:

Stap 1) Het totale aantal regels code in het stukje softwarekwaliteit dat u bent het testen van

Stap 2) Het aantal regels code dat alle testgevallen momenteel uitvoeren

Nu moet je (X gedeeld door Y) vermenigvuldigd met 100 vinden. Het resultaat van deze berekening is het percentage testdekking.

Bijvoorbeeld:

Als het aantal regels code in een systeemcomponent 500 is en het aantal regels dat voor alle bestaande testgevallen wordt uitgevoerd 50 is, dan is uw testdekking:

(50 / 500) * 100 = 10%

Voorbeelden van testdekking

Voorbeeld 1:

Als 'mes' bijvoorbeeld een item is dat u wilt testen. Dan moet je je concentreren op het controleren of de groenten of fruit nauwkeurig worden gesneden of niet. Er zijn echter nog andere aspecten waar u op moet letten, zodat de gebruiker er comfortabel mee om moet kunnen gaan.

Voorbeeld 2:

Als u bijvoorbeeld de Kladblok-applicatie wilt controleren. Dan is het controleren van de essentiële functies een must. U moet echter rekening houden met andere aspecten, aangezien de Kladblok-applicatie naar verwachting reageert tijdens het gebruik van andere applicaties, de gebruiker het gebruik van de applicatie begrijpt en niet crasht wanneer de gebruiker iets ongewoons probeert te doen, enz.

Nadelen van testdekking:

  • De meeste taken in de testdekking zijn handmatig, omdat er geen tools zijn om te automatiseren. Daarom kost het veel moeite om de vereisten te analyseren en testgevallen te creëren.
  • Met testdekking kunt u kenmerken tellen en deze vervolgens meten aan de hand van verschillende tests. Er is echter altijd ruimte voor beoordelingsfouten.