what is system integration testing
Co je Testování integrace systému?
Testování integrace systému (SIT) je celkové testování celého systému, který se skládá z mnoha subsystémů. Hlavním cílem SIT je zajistit, aby všechny závislosti softwarových modulů fungovaly správně a byla zachována integrita dat mezi různými moduly celého systému.
SUT (System Under Test) se může skládat z hardwaru, databáze, softwaru, kombinace hardwaru a softwaru nebo ze systému, který vyžaduje lidskou interakci (HITL - Human in the Loop Testing).
Z kontextu softwarového inženýrství a testování softwaru lze SIT považovat za testovací proces, který kontroluje společný výskyt softwarového systému s ostatními.
SIT má předpoklad, ve kterém několik základních integrovaných systémů již prošlo a prošlo testováním systému. SIT poté testuje požadované interakce mezi těmito systémy jako celkem. Výstupy SIT jsou předávány UAT (User přejímací testování).
Co se naučíte:
- Potřeba testu integrace systému
- Podrobnost SIT
- Jak provést testování integrace systému?
- Testování systému vs. Testování integrace systému
- Testování integrace systému vs Testování přijetí uživatele
- Příklad SIT
- Techniky SIT
- Závěr
- Doporučené čtení
Potřeba testu integrace systému
Hlavní funkcí SIT je provádět testovací závislosti mezi různými komponentami systému, a proto je regresní testování důležitou součástí SIT.
Pro projekty spolupráce je SIT součástí STLC (Software Testing lifecycle). Poskytovatel softwaru zpravidla provádí kolo před SIT, než zákazník spustí vlastní testovací případy SIT.
Ve většině organizací pracujících v IT projektech podle modelu agilního sprintu proběhne před každým vydáním tým QA kolo SIT. Vady nalezené na SIT jsou odeslány zpět vývojovému týmu a pracují na opravách.
Vydání MVP (Minimum Viable Product) ze sprintu jde pouze tehdy, když projde SIT.
SIT je vyžadován k odhalení poruch, ke kterým dochází při interakci mezi integrovanými podsystémy.
V systému se používá několik komponent a nelze je jednotlivě testovat. I když je jednotka individuálně testována, existuje také možnost, že může selhat při kombinaci v systému, protože při vzájemné interakci subsystémů existuje mnoho problémů.
Proto je SIT velmi nutné odhalit a opravit chyby před nasazením systému na konci uživatele. SIT detekuje vady v rané fázi a šetří tak čas a náklady na jejich opravu později. Také vám pomůže získat dřívější zpětnou vazbu o přijatelnosti modulu.
Podrobnost SIT
SIT lze provádět na třech různých úrovních podrobnosti:
i) Testování uvnitř systému: Jedná se o nízkou úroveň testování integrace, jejímž cílem je sloučit moduly dohromady a vytvořit jednotný systém.
ii) Testování mezi systémy: Jedná se o testování na vysoké úrovni, které vyžaduje propojení nezávisle testovaných systémů.
(iii) Párové testování: Zde se testují najednou pouze dva vzájemně propojené subsystémy v celém systému. To si klade za cíl zajistit, aby oba podsystémy mohly dobře fungovat, pokud se spojí dohromady za předpokladu, že ostatní podsystémy již fungují dobře.
Jak provést testování integrace systému?
Nejjednodušší způsob, jak provádět SIT, je metoda založená na datech. Vyžaduje minimální využití softwarových testovacích nástrojů.
co je testování černé skříňky a testování bílé skříně s příkladem
Nejprve probíhá výměna dat (import dat a export dat) mezi komponentami systému a poté se zkoumá chování každého datového pole v rámci jednotlivé vrstvy.
Jakmile je software integrován, existují tři hlavní stavy toku dat, jak je uvedeno níže:
# 1) Stav dat v integrační vrstvě
nejlepší stahovač mp3 pro Android
Integrační vrstva funguje jako rozhraní mezi importem a exportem dat. Provádění SIT v této vrstvě vyžaduje některé základní znalosti o určité technologii, jako je schéma (XSD), XML, WSDL, DTD a EDI.
Výkon výměny dat lze v této vrstvě zkoumat pomocí následujících kroků:
- Ověřte vlastnosti dat v této vrstvě proti BRD / FRD / TRD (dokument obchodního požadavku / dokument funkčního požadavku / dokument technického požadavku).
- Křížová kontrola požadavku webové služby pomocí XSD a WSDL.
- Spusťte několik testů jednotek a ověřte mapování dat a požadavky.
- Zkontrolujte protokoly middlewaru.
# 2) Stav dat v databázové vrstvě
Provádění SIT v této vrstvě vyžaduje základní znalost jazyka SQL a uložených procedur.
Výkon výměny dat v této vrstvě lze zkoumat pomocí následujících kroků:
- Zkontrolujte, zda všechna data z integrační vrstvy úspěšně dosáhla na databázové vrstvě a byla potvrzena.
- Ověřte vlastnosti tabulky a sloupce vůči BRD / FRD / TRD.
- Ověřte omezení a pravidla ověřování dat použitá v databázi podle obchodních specifikací.
- Zkontrolujte uložené procedury, zda neobsahují jakékoli zpracování dat.
- Zkontrolujte protokoly serveru.
# 3) Stav dat v aplikační vrstvě
SIT lze v této vrstvě provést pomocí následujících kroků:
- Zkontrolujte, zda jsou v uživatelském rozhraní viditelná všechna povinná pole.
- Proveďte některé pozitivní a negativní testovací případy a ověřte vlastnosti dat.
Poznámka: Může existovat spousta kombinací odpovídajících importu a exportu dat. Pro nejlepší kombinace budete muset provést SIT s ohledem na čas, který máte k dispozici.
Testování systému vs. Testování integrace systému
Rozdíly mezi testováním systému a SIT:
SIT (Testování integrace systému) | Testování systému |
---|---|
SIT se provádí hlavně za účelem kontroly vzájemné interakce jednotlivých modulů při integraci do systému jako celku. | Testování systému se provádí hlavně za účelem kontroly, zda celý systém pracuje podle očekávání s ohledem na stanovené požadavky. |
Provádí se po testování jednotky a provede se pokaždé, když se do systému přidá nový modul. | Provádí se na konečné úrovni, tj. Po dokončení testování integrace a těsně před dodáním systému pro UAT. |
Jedná se o testování na nízké úrovni. | Jedná se o testování na vysoké úrovni. |
Testovací případy SIT se zaměřují na rozhraní mezi komponentami systému. | Testovací případy se v tomto případě zaměřují na simulaci scénářů reálného života. |
Testování integrace systému vs Testování přijetí uživatele
Zde je rozdíl mezi SIT a UAT:
SIT (Testování integrace systému) | UAT (User Acceptance Testing) |
---|---|
Toto testování je z pohledu propojení mezi moduly. | Toto testování je z pohledu požadavků uživatelů. |
SIT provádějí vývojáři a testeři. | UAT je prováděno zákazníky a koncovými uživateli. |
Hotovo po testování jednotky a před testováním systému. | Toto je poslední úroveň testování a provádí se po testování systému. |
Obecně platí, že problémy nalezené v SIT by se týkaly toku dat, toku řízení atd. | Problémy nalezené v UAT by obecně byly jako funkce, které nefungují podle požadavků uživatele. |
Obrázek níže na úrovních testování vám objasní tok z testování jednotky do UAT:
Příklad SIT
Předpokládejme, že společnost používá software k ukládání údajů o klientovi.
Tento software má v uživatelském rozhraní dvě obrazovky - obrazovku 1 a obrazovku 2 a má databázi. Podrobnosti zadané na obrazovce 1 a obrazovce 2 se zadají do databáze. Od této chvíle je společnost s tímto softwarem spokojena.
O několik let později však společnost zjistila, že software nesplňuje požadavky a že je potřeba jeho vylepšení. Proto vyvinuli obrazovku 3 a databázi. Nyní je tento systém s obrazovkou 3 a databází integrován se starším / stávajícím softwarem.
Nyní se testování provedené na celém systému po integraci nazývá Test integrace systému. Zde se testuje koexistence nového systému s existujícím, aby se zajistilo, že celý integrovaný systém funguje dobře.
Techniky SIT
K provádění SIT existují hlavně 4 přístupy:
- Přístup shora dolů
- Přístup zdola nahoru
- Sandwichový přístup
- Přístup velkého třesku
Přístup shora dolů a zdola nahoru je druh přírůstkových přístupů. Začněme nejprve diskusi s přístupem shora dolů.
# 1) Přístup shora dolů:
Pod tímto testováním začíná pouze nejvyšší modul aplikace, tj. Uživatelské rozhraní, které nazýváme jako testovací ovladač.
Funkčnost základních modulů je simulována s pahýly. Horní modul je jeden po druhém integrován s pahýlem modulu nižší úrovně a později je testována funkčnost.
Po dokončení každého testu je pahýl nahrazen skutečným modulem. Moduly lze integrovat buď do šířky, nebo do hloubky. Test pokračuje, dokud nebude vytvořena celá aplikace.
Výhodou tohoto přístupu je, že není potřeba ovladačů a testovací případy lze specifikovat z hlediska funkčnosti systému.
Hlavní výzvou v tomto typu přístupu je závislost na dostupnosti funkčnosti modulu nižší úrovně. Testy mohou být zpožděny, dokud nebudou skutečné moduly nahrazeny pahýly. Psaní útržků je také obtížné.
# 2) Přístup zdola nahoru:
Eliminuje omezení přístupu shora dolů.
V této metodě se nejprve sestaví moduly nejnižší úrovně, aby se vytvořily klastry. Tyto klastry slouží jako dílčí funkce aplikace. Poté je vytvořen ovladač pro správu vstupu a výstupu testovacího případu. Poté je klastr testován.
Jakmile je klastr otestován, ovladač je odebrán a klastr je zkombinován s další vyšší úrovní. Tento proces pokračuje, dokud není dosaženo celé struktury aplikace.
V tomto přístupu není potřeba pahýlů. Zjednodušuje se to, jak se zpracování pohybuje nahoru a snižuje se potřeba ovladačů. Tento přístup je vhodný pro provádění SIT pro objektově orientované systémy, systémy v reálném čase a systémy s přísnými požadavky na výkon.
Omezení tohoto přístupu je však nejdůležitějším subsystémem, tj. Uživatelské rozhraní je testováno na poslední.
# 3) Sandwichový přístup:
Zde jsou shora diskutované přístupy shora dolů a zdola nahoru kombinovány dohromady.
Systém je vnímán tak, že má tři vrstvy - střední vrstvu, která je cílovou vrstvou, vrstvu nad cílem a vrstvu pod cílem. Testování se provádí v obou směrech a ve shlucích v cílové vrstvě, která je uprostřed, což je znázorněno na následujícím obrázku.
Strategie sendvičového testování
Výhodou tohoto přístupu je, že lze paralelně testovat horní vrstvu a spodní vrstvu systému. Omezením tohoto přístupu je však to, že před integrací taxativně netestuje jednotlivé subsystémy.
Abychom toto omezení vyloučili, upravili jsme sendvičové testování, při kterém se paralelně testuje integrace horní, střední a spodní vrstvy pomocí pahýlů a ovladačů.
jaký je rozdíl mezi java a c ++
# 4) Přístup velkého třesku:
V tomto přístupu se integrace provádí, jakmile jsou všechny moduly aplikace zcela připravené. Testování se provádí po integraci všech modulů, aby se zkontrolovalo, zda integrovaný systém funguje nebo ne.
Je náročné najít hlavní příčinu problému v tomto přístupu, protože vše je integrováno najednou, na rozdíl od přírůstkového testování. Tento přístup je obecně přijímán, když je vyžadováno pouze jedno kolo SIT.
Závěr
V tomto článku jsme se dozvěděli, co je System Integration Testing (SIT) a proč je důležité jej provádět.
Pochopili jsme základní pojmy, techniky, přístupy a metody spojené s prováděním SIT. Také jsme prošli tím, jak se SIT liší od UAT a testování systému.
Doufám, že se vám tento vynikající článek líbil !!
Doporučené čtení
- Co je Testování komponent nebo Testování modulů (Naučte se s příklady)
- Co je srovnávací testování (naučit se s příklady)
- Co je testování integrace (kurz s příkladem testování integrace)
- Nejlepší nástroje pro testování softwaru 2021 (QA Test Automation Tools)
- Rozdíly mezi testováním jednotek, testováním integrace a funkčním testováním
- Funkční testování vs. nefunkční testování
- Integrace selenu s JMeter
- Spock pro integraci a funkční testování se selenem