what is system integration testing
Čo je to Testovanie integrácie systému?
Testovanie integrácie systému (SIT) je celkové testovanie celého systému, ktorý sa skladá z mnohých podsystémov. Hlavným cieľom SIT je zabezpečiť, aby všetky závislosti softvérových modulov fungovali správne a aby sa zachovala integrita údajov medzi rôznymi modulmi celého systému.
SUT (Testovaný systém) môže pozostávať z hardvéru, databázy, softvéru, kombinácie hardvéru a softvéru alebo zo systému vyžadujúceho ľudskú interakciu (HITL - Human in the Loop Testing).
Z hľadiska softvérového inžinierstva a testovania softvéru možno SIT považovať za testovací proces, ktorý kontroluje spoločný výskyt softvérového systému s ostatnými.
SIT má predpoklad, v ktorom už niekoľko základných integrovaných systémov prešlo a prešlo testovaním systému. SIT potom testuje požadované interakcie medzi týmito systémami ako celkom. Dodávky SIT sa odovzdávajú UAT (používateľské testovanie prijatia).
Čo sa dozviete:
- Potreba testu integrácie systému
- Podrobnosť SIT
- Ako vykonať testovanie integrácie systému?
- Testovanie systému vs Testovanie integrácie systému
- Testovanie systémovej integrácie vs Testovanie prijatia používateľa
- Príklad SIT
- Techniky SIT
- Záver
- Odporúčané čítanie
Potreba testu integrácie systému
Hlavnou funkciou SIT je testovanie závislostí medzi rôznymi komponentmi systému, a preto je regresné testovanie dôležitou súčasťou SIT.
Pre projekty spolupráce je SIT súčasťou STLC (životný cyklus testovania softvéru). Poskytovateľ softvéru spravidla uskutoční kolo pred SIT predtým, ako zákazník spustí svoje vlastné testovacie prípady SIT.
Vo väčšine organizácií pracujúcich v IT projektoch podľa modelu agilného šprintu absolvuje QA tím pred každým vydaním kolo SIT. Poruchy zistené na SIT sa odošlú späť vývojovému tímu a ten pracuje na opravách.
Vydanie MVP (minimálny životaschopný produkt) zo šprintu sa uskutoční, iba keď prejde SIT.
SIT je povinný odhaliť chyby, ktoré sa vyskytnú pri interakcii medzi integrovanými podsystémami.
V systéme sa používa niekoľko komponentov, ktoré nie je možné jednotlivo otestovať. Aj keď je jednotka individuálne testovaná, existuje tiež možnosť, že môže zlyhať, keď sa skombinuje v systéme, pretože pri vzájomnej interakcii subsystémov vzniká veľa problémov.
Preto je SIT veľmi potrebné odhaliť a opraviť chyby pred nasadením systému na konci používateľa. SIT detekuje chyby v ranom štádiu, a tým šetrí čas a náklady na ich neskoršiu opravu. Pomáha vám tiež získať skoršiu spätnú väzbu o prijateľnosti modulu.
Podrobnosť SIT
SIT sa môže uskutočňovať na troch rôznych úrovniach podrobnosti:
i) Vnútrosystémové testovanie: Jedná sa o nízku úroveň testovania integrácie, ktorá sa zameriava na spojenie modulov dohromady a vytvorenie jednotného systému.
ii) Testovanie medzi systémami: Toto je testovanie na vysokej úrovni, ktoré si vyžaduje prepojenie nezávisle testovaných systémov.
iii) Párové testovanie: Tu sa testujú naraz iba dva vzájomne prepojené subsystémy v celom systéme. Toto sa zameriava na zabezpečenie toho, aby dva podsystémy mohli dobre fungovať, ak sa skombinujú za predpokladu, že ostatné podsystémy už fungujú dobre.
Ako vykonať testovanie integrácie systému?
Najjednoduchší spôsob vykonávania SIT je pomocou metódy založenej na dátach. Vyžaduje minimálne použitie softvérových testovacích nástrojov.
najlepší vzdialený spyware pre mobilné telefóny
Najskôr dochádza k výmene údajov (import údajov a export údajov) medzi systémovými komponentmi a potom sa skúma chovanie každého údajového poľa v rámci jednotlivej vrstvy.
Po integrácii softvéru existujú tri hlavné stavy toku údajov, ktoré sú uvedené nižšie:
# 1) Stav údajov v integračnej vrstve
Integračná vrstva slúži ako rozhranie medzi importom a exportom údajov. Vykonávanie SIT na tejto vrstve vyžaduje základné znalosti o určitých technológiách, ako sú schémy (XSD), XML, WSDL, DTD a EDI.
Výkonnosť výmeny údajov je možné na tejto vrstve preskúmať pomocou nasledujúcich krokov:
- Overte vlastnosti údajov v tejto vrstve oproti BRD / FRD / TRD (dokument obchodných požiadaviek / dokument funkčných požiadaviek / dokument technických požiadaviek).
- Krížová kontrola žiadosti o webovú službu pomocou XSD a WSDL.
- Spustite niekoľko testov jednotiek a overte mapovania údajov a požiadavky.
- Skontrolujte protokoly middlewaru.
# 2) Stav údajov v databázovej vrstve
Vykonávanie SIT na tejto vrstve vyžaduje základné znalosti jazyka SQL a uložených procedúr.
Výkon výmeny údajov v tejto vrstve je možné skontrolovať pomocou nasledujúcich krokov:
- Skontrolujte, či všetky údaje z integračnej vrstvy úspešne dosiahli na databázovej vrstve a či boli potvrdené.
- Overte vlastnosti tabuľky a stĺpca oproti BRD / FRD / TRD.
- Validujte obmedzenia a pravidlá overovania údajov použité v databáze podľa obchodných špecifikácií.
- Skontrolujte uložené procedúry, či neobsahujú akékoľvek spracovanie údajov.
- Skontrolujte protokoly servera.
# 3) Stav údajov v aplikačnej vrstve
SIT je možné vykonať na tejto vrstve pomocou nasledujúcich krokov:
- Skontrolujte, či sú v používateľskom rozhraní viditeľné všetky povinné polia.
- Vykonajte niektoré pozitívne a negatívne testovacie prípady a overte vlastnosti údajov.
Poznámka: Môže existovať veľa kombinácií zodpovedajúcich importu a exportu údajov. Pre najlepšie kombinácie budete musieť vykonať SIT s ohľadom na čas, ktorý máte k dispozícii.
Testovanie systému vs Testovanie integrácie systému
Rozdiely medzi testovaním systému a SIT:
SIT (Testovanie systémovej integrácie) | Testovanie systému |
---|---|
Program SIT sa vykonáva hlavne na to, aby sa skontrolovalo, ako jednotlivé moduly navzájom interagujú, keď sú integrované do systému ako celku. | Testovanie systému sa vykonáva hlavne na kontrolu, či celý systém pracuje podľa očakávania s ohľadom na špecifikované požiadavky. |
Vykonáva sa po testovaní jednotky a vykoná sa zakaždým, keď sa do systému pridá nový modul. | Vykonáva sa na konečnej úrovni, t. J. Po dokončení integračného testovania a tesne pred dodaním systému pre UAT. |
Je to testovanie na nízkej úrovni. | Je to testovanie na vysokej úrovni. |
Testovacie prípady SIT sa zameriavajú na rozhranie medzi komponentmi systému. | Testovacie prípady sa v tomto prípade zameriavajú na simuláciu scenárov z reálneho života. |
Testovanie systémovej integrácie vs Testovanie prijatia používateľa
Tu je rozdiel medzi SIT a UAT:
SIT (Testovanie systémovej integrácie) | UAT (User Acceptance Testing) |
---|---|
Toto testovanie je z pohľadu prepojenia medzi modulmi. | Toto testovanie je z pohľadu požiadaviek používateľov. |
SIT vykonávajú vývojári a testeri. | UAT vykonávajú zákazníci a koncoví používatelia. |
Hotovo po testovaní jednotky a pred testovaním systému. | Toto je posledná úroveň testovania a vykonáva sa po testovaní systému. |
Problémy nájdené v SIT by vo všeobecnosti súviseli s tokom údajov, tokom kontroly atď. | Problémy zistené v UAT by boli vo všeobecnosti podobné funkciám, ktoré nefungujú podľa požiadaviek používateľa. |
Obrázok nižšie na úrovniach testovania vám objasní postup od testovania jednotiek k UAT:
Príklad SIT
Predpokladajme, že spoločnosť používa softvér na ukladanie údajov o klientovi.
Tento softvér má v používateľskom rozhraní dve obrazovky - obrazovku 1 a obrazovku 2 a má databázu. Podrobnosti zadané na obrazovke 1 a obrazovke 2 sa zadajú do databázy. Odteraz je spoločnosť s týmto softvérom spokojná.
O niekoľko rokov neskôr však spoločnosť zistí, že softvér nespĺňa požiadavky a je potrebné ho vylepšiť. Preto vyvinuli obrazovku 3 a databázu. Teraz je tento systém s obrazovkou 3 a databázou integrovaný so starším / existujúcim softvérom.
Teraz sa testovanie vykonané na celom systéme po integrácii nazýva Test integrácie systému. Tu sa testuje koexistencia nového systému s existujúcim, aby sa zabezpečilo, že celý integrovaný systém funguje dobre.
bootstrap rozhovor otázky a odpovede pre skúsených
Techniky SIT
Na uskutočnenie SIT existujú hlavne 4 prístupy:
- Prístup zhora nadol
- Prístup zdola nahor
- Prístup sendvič
- Prístup veľkého tresku
Prístup zhora nadol a zdola nahor je akýmsi prírastkovým prístupom. Najprv začnime diskusiu prístupom zhora nadol.
# 1) Prístup zhora nadol:
V rámci toho testovanie začína iba najvyšším modulom aplikácie, t. J. Používateľským rozhraním, ktoré nazývame testovací ovládač.
Funkčnosť základných modulov sa simuluje pomocou pahýľov. Horný modul je jeden po druhom integrovaný do spodného modulu a neskôr je testovaná funkčnosť.
Po dokončení každého testu je pahýľ nahradený skutočným modulom. Moduly môžu byť integrované buď do šírky, alebo do hĺbky. Test pokračuje, kým sa nevytvorí celá aplikácia.
Výhodou tohto prístupu je, že nie sú potrebné ovládače a testovacie prípady je možné špecifikovať z hľadiska funkčnosti systému.
Hlavnou výzvou v tomto type prístupu je závislosť od dostupnosti funkčnosti modulu nižšej úrovne. Testy môžu byť oneskorené, kým sa skutočné moduly nevymenia za pahýly. Písanie pahýlov je tiež ťažké.
# 2) Prístup zdola nahor:
Eliminuje sa tým obmedzenie prístupu zhora nadol.
V tejto metóde sa najskôr zostavujú moduly najnižšej úrovne, aby vytvorili klastre. Tieto klastre slúžia ako čiastková funkcia aplikácie. Potom sa vytvorí ovládač, ktorý spravuje vstup a výstup testovacieho prípadu. Potom sa klaster otestuje.
Po otestovaní klastra sa ovládač odstráni a klaster sa skombinuje s ďalšou hornou úrovňou. Tento proces pokračuje, kým sa nedosiahne celá štruktúra aplikácie.
V tomto prístupe nie sú potrebné pahýle. Zjednodušuje sa to, keď sa spracovanie posúva nahor a potreba vodičov sa zníži. Tento prístup sa odporúča pri implementácii SIT pre objektovo orientované systémy, systémy v reálnom čase a systémy s prísnymi požiadavkami na výkon.
Obmedzenie tohto prístupu je však najdôležitejším subsystémom, t. J. Používateľské rozhranie sa testuje ako posledné.
# 3) Sendvičový prístup:
Tu sú kombinované zhora nadol a zdola nahor prístupy diskutované vyššie.
normalizácia v databáze s príkladmi tabuliek
Systém sa vníma ako systém, ktorý má tri vrstvy - strednú vrstvu, ktorá je cieľovou vrstvou, vrstvu nad cieľom a vrstvu pod cieľom. Testovanie sa vykonáva v obidvoch smeroch a v zhromaždeniach na cieľovej vrstve, ktorá je v strede, čo je znázornené na nasledujúcom obrázku.
Stratégia sendvičového testovania
Výhodou tohto prístupu je, že je možné paralelne testovať hornú vrstvu a spodnú vrstvu systému. Obmedzením tohto prístupu je však to, že pred integráciou podrobne netestuje jednotlivé podsystémy.
Aby sme eliminovali toto obmedzenie, upravili sme sendvičové testovanie, pri ktorom sa paralelne testuje integrácia vrchnej, strednej a spodnej vrstvy pomocou pahýlov a ovládačov.
# 4) Prístup veľkého tresku:
V tomto prístupe sa integrácia uskutoční, keď sú všetky moduly aplikácie úplne pripravené. Testovanie sa vykonáva po integrácii všetkých modulov s cieľom skontrolovať, či integrovaný systém funguje alebo nie.
V tomto prístupe je náročné nájsť hlavnú príčinu problému, pretože všetko je integrované naraz, na rozdiel od prírastkového testovania. Tento prístup sa všeobecne prijíma, keď sa vyžaduje iba jedno kolo SIT.
Záver
V tomto článku sme sa dozvedeli, čo je Testovanie systémovej integrácie (SIT) a prečo je dôležité ho vykonávať.
Pochopili sme základné koncepty, techniky, prístupy a metódy použité pri vykonávaní SIT. Prešli sme si tiež tým, ako sa SIT líši od UAT a testovania systému.
Dúfam, že sa vám tento vynikajúci článok páčil !!
Odporúčané čítanie
- Čo je to testovanie komponentov alebo testovanie modulov (naučte sa s príkladmi)
- Čo je to porovnávacie testovanie (ďalšie informácie s príkladmi)
- Čo je testovanie integrácie (návod s príkladom testovania integrácie)
- Najlepšie nástroje na testovanie softvéru 2021 [QA Test Automation Tools]
- Rozdiely medzi testovaním jednotiek, testovaním integrácie a funkčným testovaním
- Funkčné testovanie vs. Nefunkčné testovanie
- Integrácia selénu s JMeter
- Spock pre integráciu a funkčné testovanie so selénom