Oké … dus ik word er gek van omdat ik het team probeer aan te moedigen om nog meer tests te schrijven. Hier ben ik kan niet bepalen of het volgende voorbeeld wordt beschouwd als een integratie of een functionele testcase.

Overweeg het volgende:

We hebben een eenvoudige webapplicatie die een aantal JSON-feeds routeert / blootlegt . Elk gebruikersverzoek vereist dat onze applicatie een externe service opvraagt via HTTP (op de backend) voordat enkele datatransformaties worden uitgevoerd en vervolgens een geserialiseerd JSON-antwoord retourneert.

Met behulp van een bibliotheek van derden kunnen we registreer elke unieke HTTP-interactie die plaatsvindt op de backend en schrijf deze naar het bestandssysteem. Deze opnames worden vervolgens “afgespeeld” waardoor deze queryresultaten tijdens het testen als deterministisch kunnen worden behandeld.

Mijn testcase bevat een enkele bewering. Het is slechts een tekenreeks die het verwachte JSON-antwoord voor een enkele feed bevat. Nadat we onze applicatie hebben geïnitialiseerd, staan we het toe om een verzoek te routeren voordat het antwoord wordt vastgelegd en het wordt vergeleken met de verwachte JSON.

1) Is dit een functionele test of een integratietest?

2) Indien functioneel, wat is dan precies het verschil tussen “Big Bang Integration Testing and Functional Testing”?

Antwoord

1) Is dit een functionele test of een integratietest?

Functioneel testen en integratietesten zijn classificaties van tests, en ze sluiten elkaar niet uit.

In dit geval is het beide. Integratietests zijn per definitie elke test die meer dan één component test. Het kan op een laag niveau om twee klassen te testen die samenwerken, of het kunnen tests zijn die het hele systeem als geheel testen.

Functionele tests zijn tests die een bepaalde systeemfunctie bevestigen. Dus als ik een vereiste heb ” het systeem zal gebruikersobject in de database behouden “, kan de functionele test die vereiste verifiëren door het systeem te starten, een gebruiker op te slaan, het systeem te stoppen, het opnieuw te starten en te verifiëren dat de gebruiker bestaat en niet is gewijzigd.

Als u schrijft door testcases uit een vereiste specificatie of uit gebruikersverhalen, zou ik uw testcases “functionele tests” willen noemen, maar ze worden van nature ook geclassificeerd als integratietests.

2) Indien functioneel, wat is dan precies het verschil tussen “Big Bang Integration Testing and Functional Testing”?

Naar mijn mening “big bang integratietesten “is integratietesten waarbij alle componenten van het systeem worden geïntegreerd en vervolgens worden getest. Het doel van deze test is om ervoor te zorgen dat alle componenten correct integreren en dat de app kan starten. Het nadeel van dit soort testen is dat het mislukken van een testcase weinig richting geeft aan waar de bug zich bevindt, dus het is belangrijk om ook integratietests op een lager niveau te hebben.

Je functionele tests zullen integreer waarschijnlijk ook alle componenten in het systeem voordat u gaat testen. Maar hoewel big bang-integratietesten er hetzelfde uitzien omdat het hele systeem wordt gestart, zijn ze conceptueel anders.

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *