Verschil tussen top-down en bottom-up integratietests

Schrijver: Laura McKinney
Datum Van Creatie: 2 April 2021
Updatedatum: 14 Kunnen 2024
Anonim
Sensation & Perception: Top-Down & Bottom-Up Processing
Video: Sensation & Perception: Top-Down & Bottom-Up Processing

Inhoud


Het primaire verschil tussen de top-down en bottom-up integratietests is dat de top-down integratietests de stubs gebruiken om de submodules ondergeschikt te maken aan de hoofdfunctie, terwijl in de bottom-up integratietests de stubs niet nodig zijn, maar stuurprogramma's worden gebruikt . De gerelateerde redundantie is meer in het geval van de top-downbenadering in vergelijking met de bottom-up.

Deze twee technieken maken deel uit van de integratietest, die een georganiseerde manier biedt om de programmastructuur tegelijkertijd uit te voeren om tests uit te voeren die verband houden met interfacing. Integratietesten worden voornamelijk uitgevoerd om de geteste componenten te combineren om het programma volgens de ontwerpspecificaties op te bouwen.

    1. Vergelijkingstabel
    2. Definitie
    3. Belangrijkste verschillen
    4. Gevolgtrekking

Vergelijkingstabel

Basis voor vergelijkingTop-down integratie testenBottom-up integratie testen
basis-Gebruikt stubs als tijdelijke vervanging voor de aangeroepen modules en simuleert het gedrag van de gescheiden modules op lager niveau.Gebruik teststuurprogramma's om de vereiste gegevens te initiëren en door te geven aan modules op een lager niveau.
GunstigAls het significante defect optreedt aan de bovenkant van het programma.Als de cruciale tekortkomingen tegen de onderkant van het programma stuiten.
NaderingHoofdfunctie wordt eerst geschreven, daarna worden de subroutines opgeroepen.Modules worden eerst gemaakt en vervolgens geïntegreerd met de hoofdfunctie.
Geïmplementeerd opOp structuur / procedure gerichte programmeertalen.Objectgeoriënteerde programmeertalen.
Risico analyseMedewerking aan de impact van interne operationele fouten.Modellen worden gebruikt om het individuele proces te analyseren.
ingewikkeldheidGemakkelijkComplex en zeer data-intensief.
Werkt aanGrote tot kleine componenten.Kleine tot grote componenten.


Definitie van top-down integratietests

De top-down integratie testen is een incrementele techniek voor het bouwen van een programmastructuur. Het bevat de modules terwijl het naar beneden beweegt, beginnend met de hoofdbesturing in de hiërarchie. Sub-modules worden vervolgens geïntegreerd in de hoofdmodule met behulp van een methode met de diepte eerst of de breedte eerst. Het belangrijkste doel van top-down integratie is om de significante controle- en beslissingspunten eerder in het testproces te verifiëren.

Het integratieproces omvat de volgende stappen in de top-downbenadering:

  • Beginnend met de hoofdbesturingsmodule worden stubs vervangen voor de componenten die zich onder de hoofdmodules bevinden.
  • De vervangingsstrategie van de ondergeschikte stub is afhankelijk van het type integratiebenadering dat wordt gevolgd (d.w.z. diepte en breedte eerst), maar slechts één stub mag per keer worden vervangen door werkelijke componenten.
  • Na de integratie van de componenten worden de tests uitgevoerd.
  • Als een set tests is voltooid, wordt de resterende stub vervangen door de eigenlijke component.
  • Uiteindelijk wordt de regressietest uitgevoerd om de afwezigheid van nieuwe fouten te verzekeren.

Omdat de top-down testen stubs gebruiken om de gegevens op laag niveau te vervangen en het niet is toegestaan ​​om in opwaartse richting te stromen. Er zijn drie manieren om dit te doen, ten eerste, totdat de vervanging van stubs door werkelijke functies is voltooid, worden de andere functies vertraagd. Ten tweede kunnen de nieuwe stubs worden gemaakt die beperkte functies kunnen uitvoeren en de daadwerkelijke stubs kunnen imiteren. In het laatste idee kunnen de stubs van onder naar boven hiërarchie worden geïntegreerd. De laatste oplossing wordt echter bottom-up integratie genoemd, die in de volgende definitie wordt beschreven.


Definitie van bottom-up integratietests

De bottom-up integratie testen begint met de constructie van de fundamentele modules (d.w.z. programma-elementen op het laagste niveau). Het integreert de componenten die zich op het laagste niveau bevinden (d.w.z. het laagste niveau) door een proces te bieden en elimineert de noodzaak van de stubs. Naarmate de integratie naar de bovenste richting gaat, neemt de behoefte aan de afzonderlijke testdrivers af. Vandaar dat de hoeveelheid overhead ook wordt verminderd in vergelijking met de benadering van top-bottom-integratietests.

Bottom-up integratie omvat de volgende stappen:

  • Het voegt de elementen op laag niveau, ook wel builds genoemd, samen in clusters die een bepaalde softwaresubfunctie uitvoeren.
  • De driver (besturingsprogramma) wordt in de bottom-up integratie gebruikt om de invoer en uitvoer van testgevallen te regelen.
  • Vervolgens wordt het cluster getest.
  • Clusters worden opgenomen terwijl ze omhoog gaan in de programmastructuur en stuurprogramma's worden geëlimineerd.
  1. De top-down integratietest implementeert de stubs als vervanging voor het lage niveau. In tegenstelling tot de bottom-up integratietests worden de stuurprogramma's gebruikt om de gegevens door te geven aan het lagere modulesniveau.
  2. De hoofdfunctie is het belangrijkste onderdeel van de top-down integratietest waardoor andere subroutines worden aangeroepen. Integendeel, bij de bottom-up benadering ligt de nadruk op de modules op een lager niveau en worden deze in eerste instantie gemaakt en geïntegreerd.
  3. Structuur / procedure-georiënteerde programmeertalen implementeren top-down integratietests, terwijl bottom-up testen worden geïmplementeerd op de objectgeoriënteerde talen.
  4. Om het risico in de top-down testbenadering te onderzoeken, wordt het effect van de interne operationele defecten gecombineerd. De bottom-up integratietests daarentegen controleren het proces afzonderlijk met behulp van de modellen.
  5. Top-down integratietests zijn eenvoudig in vergelijking met bottom-up testen.
  6. De top-down integratietest werkt via grote tot kleine componenten, terwijl de bottom-up benadering omgekeerd is.

Gevolgtrekking

Bij beide benaderingen, top-down en bottom-up integratietests, levert de top-down meer overbodige resultaten op en leidt dit tot extra inspanningen in de vorm van overheadkosten. Omgekeerd is de bottom-upbenadering complex maar efficiënter dan de vorige.