Čo je to Testovanie integrácie systému?
Testovanie integrácie systému je definované ako typ testovania softvéru vykonávaného v integrovanom hardvérovom a softvérovom prostredí na overenie správania celého systému. Testuje sa na úplnom integrovanom systéme s cieľom vyhodnotiť súlad systému s jeho špecifikovanými požiadavkami.
Testovanie integrácie systému (SIT) sa vykonáva na overenie interakcie medzi modulmi softvérového systému. Zaoberá sa overovaním vysokých a nízkych úrovní softvérových požiadaviek uvedených v špecifikácii / údajoch o softvérových požiadavkách a dokumente o softvérovom dizajne.
Taktiež overuje koexistenciu softvérového systému s ostatnými a testuje rozhranie medzi modulmi softvérovej aplikácie. Pri tomto type testovania sa moduly najskôr testujú jednotlivo a potom sa z nich vytvorí systém.
Napríklad softvérové a / alebo hardvérové komponenty sa kombinujú a testujú postupne, až kým nebude integrovaný celý systém.
V tomto návode sa naučíte
- Čo je to Testovanie integrácie systému?
- Prečo testovanie systémovej integrácie
- Ako postupovať pri testovaní integrácie systému
- Kritériá vstupu a výstupu pre testovanie integrácie
- Testovanie integrácie hardvéru a softvéru
- Testovanie integrácie softvéru na softvér
- Prístup zhora nadol
- Prístup zdola nahor
- Prístup veľkého tresku
Prečo testovanie systémovej integrácie
V softvérovom inžinierstve sa testovanie systémovej integrácie vykonáva, pretože
- Pomáha včas odhaliť chybu
- Skoršia spätná väzba o prijateľnosti jednotlivých modulov bude k dispozícii
- Plánovanie opráv chýb je flexibilné a môže sa prekrývať s vývojom
- Správny tok údajov
- Správny regulačný tok
- Správne načasovanie
- Správne využitie pamäte
- Správne podľa požiadaviek na softvér
Ako postupovať pri testovaní integrácie systému
Je to systematická technika na konštrukciu programovej štruktúry pri vykonávaní testov na odhalenie chýb spojených s prepojením.
Všetky moduly sú vopred integrované a celý program je testovaný ako celok. Počas tohto procesu sa však pravdepodobne vyskytne množina chýb.
Oprava takýchto chýb je zložitá, pretože príčiny izolácie komplikuje rozsiahle rozšírenie celého programu. Len čo sa tieto chyby opravia a opravia, objaví sa nová a proces bude plynulo pokračovať v nekonečnej slučke . Aby sa zabránilo tejto situácii, používa sa iný prístup, prírastková integrácia. Viac podrobností o prírastkovom prístupe uvidíme ďalej v tomto výučbe.
Existuje niekoľko prírastkových metód, napríklad integračné testy sa vykonávajú v systéme založenom na cieľovom procesore. Použitá metodika je Black Box Testing. Môže sa použiť integrácia zdola nahor alebo zhora nadol.
Testovacie prípady sú definované iba pomocou softvérových požiadaviek na vysokej úrovni.
Softvérovú integráciu je možné tiež dosiahnuť vo veľkej miere v hostiteľskom prostredí, pričom jednotky špecifické pre cieľové prostredie sa v hostiteľovi naďalej simulujú. Na potvrdenie budú opäť potrebné opakované testy v cieľovom prostredí.
Potvrdzovacie testy na tejto úrovni identifikujú problémy špecifické pre dané prostredie, ako napríklad chyby v alokácii pamäte a de-alokácii. Praktickosť vykonávania softvérovej integrácie v hostiteľskom prostredí bude závisieť od toho, koľko cieľových funkcií tam je. Pre niektoré vstavané systémy bude spojenie s cieľovým prostredím veľmi silné, čo znemožňuje realizáciu softvérovej integrácie v hostiteľskom prostredí.
Veľký vývoj softvéru rozdelí softvérovú integráciu do niekoľkých úrovní. Nižšie úrovne softvérovej integrácie by mohli vychádzať predovšetkým z hostiteľského prostredia, pričom neskoršie úrovne softvérovej integrácie záviseli viac od cieľového prostredia.
Poznámka: Ak sa testuje iba softvér, nazýva sa to Testovanie softvérovej integrácie softvéru [SSIT] a ak sa testuje hardvér aj softvér, potom sa to nazýva Testovanie integrácie hardvérového softvéru [HSIT].
Kritériá vstupu a výstupu pre testovanie integrácie
Zvyčajne sa pri vykonávaní integračného testovania používa stratégia ETVX (kritériá vstupu, úlohy, overenie a ukončenie).
Kritériá vstupu:
- Dokončenie testovania jednotky
Vstupy:
- Údaje o softvérových požiadavkách
- Dokument o softvérovom dizajne
- Plán overenia softvéru
- Dokumenty o integrácii softvéru
Aktivity:
- Na základe požiadaviek vysokej a nízkej úrovne vytvorte testovacie prípady a postupy
- Kombinujte zostavy nízkoúrovňových modulov, ktoré implementujú spoločnú funkčnosť
- Vyvinúť testovací postroj
- Vyskúšajte zostavu
- Po úspešnom absolvovaní testu sa zostavenie skombinuje s inými zostavami a testuje sa, kým sa systém nezintegruje ako celok.
- Znova vykonajte všetky testy na cieľovej platforme založenej na procesore a získajte výsledky
Kritériá výstupu:
- Úspešné dokončenie integrácie softvérového modulu na cieľovom hardvéri
- Správny výkon softvéru podľa zadaných požiadaviek
Výstupy
- Správy o skúške integrácie
- Prípady a postupy na testovanie softvéru [SVCP].
Testovanie integrácie hardvérového softvéru
Testovanie integrácie hardvérového softvéru je proces testovania komponentov počítačového softvéru (CSC) na vysokej úrovni funkcií v cieľovom hardvérovom prostredí. Cieľom testovania integrácie hardvéru a softvéru je testovať správanie vyvinutého softvéru integrovaného do hardvérovej súčasti.
Testovanie integrácie hardvéru a softvéru na základe požiadaviek
Cieľom testovania integrácie hardvéru / softvéru založeného na požiadavkách je zabezpečiť, aby softvér v cieľovom počítači vyhovoval požiadavkám na vysokej úrovni. Medzi typické chyby odhalené touto testovacou metódou patria:
- Chyby hardvérového / softvérového rozhrania
- Porušenie rozdelenia softvéru.
- Neschopnosť zistiť poruchy zabudovaným testom
- Nesprávna reakcia na zlyhanie hardvéru
- Chyba v dôsledku postupnosti, prechodných vstupných zaťažení a prechodných vstupných výkonov
- Spätná väzba nesprávneho správania
- Nesprávna alebo nesprávna kontrola hardvéru na správu pamäte
- Problém s údajovou zbernicou
- Nesprávna činnosť mechanizmu na overenie kompatibility a správnosti softvéru načítateľného v teréne
Hardvérová integrácia softvéru sa zaoberá overovaním požiadaviek na vysokej úrovni. Všetky testy na tejto úrovni sa vykonávajú na cieľovom hardvéri.
- Testovanie čiernej skrinky je primárnou metodikou testovania použitou na tejto úrovni testovania.
- Testovacie prípady definujte iba z vysokých požiadaviek
- Musí byť vykonaný test na produkčnom štandardnom hardvéri (na cieľovom)
Čo je potrebné vziať do úvahy pri navrhovaní testovacích prípadov pre integráciu HW / SW
- Správne získanie všetkých údajov softvérom
- Škálovanie a rozsah údajov podľa očakávania od hardvéru po softvér
- Správny výstup údajov zo softvéru na hardvér
- Údaje v rámci špecifikácií (normálny rozsah)
- Údaje mimo špecifikácie (abnormálny rozsah)
- Hraničné údaje
- Prerušuje spracovanie
- Načasovanie
- Správne využitie pamäte (adresovanie, prekrývanie atď.)
- Prechody stavu
Poznámka: Pri testovaní prerušenia budú všetky prerušenia overené nezávisle od počiatočnej požiadavky prostredníctvom úplného servisu a po dokončení. Testovacie prípady budú špeciálne navrhnuté tak, aby primerane testovali prerušenia.
Testovanie integrácie softvéru na softvér
Jedná sa o testovanie Počítačového softvérového komponentu fungujúceho v hostiteľskom / cieľovom počítači
Prostredie pri simulácii celého systému [iných CSC] a na vysokej úrovni funkčnosti.
Zameriava sa na správanie CSC v simulovanom prostredí hostiteľ / cieľ. Prístup použitý pri softvérovej integrácii môže byť prírastkový (zhora nadol, zdola nahor alebo ich kombinácia).
Inkrementálny prístup
Prírastkové testovanie je spôsob integračného testovania. Pri tomto type testovacej metódy najskôr otestujete každý modul softvéru jednotlivo a potom pokračujete v testovaní tak, že k nemu pripojíte ďalšie moduly, potom ďalší a podobne.
Inkrementálna integrácia je kontrastom k prístupu veľkého tresku. Program je zostavený a testovaný v malých segmentoch, kde je ľahšie chyby izolovať a opraviť. Rozhrania sa pravdepodobne budú testovať úplne a môže sa uplatniť systematický testovací prístup.
Existujú dva typy prírastkového testovania
- Prístup zhora nadol
- Prístup zdola nahor
Prístup zhora nadol
V tomto type prístupu začína jednotlivo testovaním iba používateľského rozhrania, pričom základné funkcie sú simulované pomocou pahýľov, potom sa posúvate smerom dole a integrujete spodné a spodné vrstvy, ako je to znázornené na obrázku nižšie.
- Počnúc hlavným riadiacim modulom sú moduly integrované pohybom nadol v hierarchii ovládania
- Submoduly k hlavnému riadiacemu modulu sú zabudované do štruktúry buď spôsobom na šírku, alebo na prvom mieste.
- Integrácia do hĺbky integruje všetky moduly na hlavnú riadiacu cestu štruktúry, ako je znázornené na nasledujúcom diagrame:
Proces integrácie modulu sa vykonáva nasledujúcim spôsobom:
- Hlavný riadiaci modul sa používa ako testovací ovládač a pahýly sa nahradia za všetky moduly priamo podriadené hlavnému riadiacemu modulu.
- Podriadené pahýle sú nahradené jeden po druhom skutočnými modulmi v závislosti od zvoleného prístupu (najskôr šírka alebo najskôr hĺbka).
- Testy sa vykonávajú, keď je každý modul integrovaný.
- Po dokončení každej sady testov sa po dokončení každej sady testov nahradí ďalší pahýl skutočným modulom
- Aby ste sa uistili, že neboli zavedené nové chyby, je možné vykonať regresné testovanie.
Proces pokračuje od kroku 2, kým sa nevytvorí celá štruktúra programu. Stratégia zhora nadol znie pomerne nekomplikovane, v praxi však vznikajú logistické problémy.
Najčastejšie sa tieto problémy vyskytujú, keď sa na adekvátne testovanie vyšších úrovní vyžaduje spracovanie na nízkych úrovniach v hierarchii.
Pahýly nahradzujú nízkoúrovňové moduly na začiatku testovania zhora nadol, a preto v štruktúre programu nemôžu prúdiť smerom nahor žiadne významné údaje.
Výzvy, ktorým môže Tester čeliť:
- Mnoho testov odložte, kým nebudú pahýle nahradené skutočnými modulmi.
- Vyvíjajte pahýle, ktoré vykonávajú obmedzené funkcie simulujúce skutočný modul.
- Integrujte softvér od dolnej časti hierarchie nahor.
Poznámka: Prvý prístup spôsobí, že stratíme určitú kontrolu nad korešpondenciou medzi konkrétnymi testami a začlenením konkrétnych modulov. To môže mať za následok ťažkosti s určením príčiny chýb, ktoré majú tendenciu porušovať vysoko obmedzenú povahu prístupu zhora nadol.
Druhý prístup je uskutočniteľný, ale môže viesť k značnej réžii, pretože pahýle sú čoraz zložitejšie.
Prístup zdola nahor
Integrácia zdola nahor začína konštrukciu a testovanie s modulmi na najnižšej úrovni v štruktúre programu. V tomto procese sú moduly integrované zdola nahor.
V tomto prístupe je vždy k dispozícii spracovanie požadované pre moduly podriadené danej úrovni a potreba pahýľov je eliminovaná.
Tento test integračného procesu sa vykonáva v sérii štyroch krokov
- Nízkoúrovňové moduly sa kombinujú do klastrov, ktoré vykonávajú konkrétnu softvérovú podfunkciu.
- Ovládač je napísaný tak, aby koordinoval vstup a výstup testovacieho prípadu.
- Klaster alebo zostava sú testované.
- Ovládače sú odstránené a klastre sú kombinované a pohybujú sa nahor v štruktúre programu.
Postupom integrácie rastie potreba samostatných lekcií testovacích vodičov. V skutočnosti, ak sú najvyššie dve úrovne programovej štruktúry integrované zhora nadol, počet ovládačov sa môže podstatne znížiť a integrácia klastrov sa výrazne zjednoduší. Integrácia sa riadi vzorom zobrazeným nižšie. Postupom integrácie rastie potreba samostatných lekcií testovacích vodičov.
Poznámka: Ak sú horné dve úrovne programovej štruktúry integrované zhora nadol, počet ovládačov sa môže podstatne znížiť a integrácia zostavení sa výrazne zjednoduší.
Prístup veľkého tresku
V tomto prístupe nie sú všetky moduly integrované, kým a pokiaľ nie sú pripravené všetky moduly. Keď sú pripravené, všetky moduly sú integrované a potom sú spustené, aby sa zistilo, či všetky integrované moduly fungujú alebo nie.
V tomto prístupe je ťažké poznať hlavnú príčinu zlyhania z dôvodu integrácie všetkého naraz.
Taktiež bude vysoká pravdepodobnosť výskytu kritických chýb v produkčnom prostredí.
Tento prístup je prijatý, iba ak je potrebné vykonať testovanie integrácie naraz.
Zhrnutie:
- Integrácia sa vykonáva na overenie interakcie medzi modulmi softvérového systému. Pomáha včas odhaliť poruchu
- Testovanie integrácie je možné vykonať pri integrácii hardvér-softvér alebo hardvér-hardvér
- Testovanie integrácie sa vykonáva dvoma metódami
- Postupný prístup
- Prístup veľkého tresku
- Pri vykonávaní integračného testovania sa všeobecne používa stratégia ETVX (vstupné kritériá, úlohy, overenie a výstupné kritériá).