what is component testing
Co se Testování komponent také nazývá Testování modulů v Testování softwaru:
Komponenta je nejnižší jednotka jakékoli aplikace. Testování komponent; jak název napovídá, je technika testování nejnižší nebo nejmenší jednotky jakékoli aplikace.
Testování komponent se někdy označuje také jako Testování programů nebo modulů.
Aplikaci lze považovat za kombinaci a integraci mnoha malých jednotlivých modulů. Než otestujeme celý systém, je imperiální, aby byla důkladně otestována každá součást NEBO nejmenší jednotka aplikace.
jak se nazývají chyby v počítačovém softwaru
V tomto případě jsou moduly nebo jednotky testovány nezávisle. Každý modul přijímá vstup, provádí určité zpracování a generuje výstup. Výstup je poté ověřen podle očekávané funkce.
Softwarové aplikace mají obrovskou povahu a je výzvou otestovat celý systém. Může to vést k mnoha mezerám v pokrytí testu. Před přechodem na testování integrace nebo funkční testování se proto doporučuje začít s testováním komponent.
Přečtěte si také=> Rozdíl v jednotce, integraci a funkčním testování
Co se naučíte:
- Testování komponent
- Cíl testování komponent
- Vstupy do testování úrovně komponent
- Kdo provádí testování komponent?
- Co se testuje v rámci testování komponent?
- Když je testování komponent hotovo?
- Testovací strategie testování komponent
- Pahýly a ovladače
- Příklad
- Jak psát testovací případy komponent?
- Testování součástí vs. Testování jednotek
- Součást Vs Rozhraní Vs Integrace Vs Testování systémů
- Závěr
- Doporučené čtení
Testování komponent
Jedná se o druh testování bílé krabice.
Testování komponent tedy hledá chyby a ověří fungování modulů / programů, které lze samostatně testovat.
Existuje testovací strategie a testovací plán pro testování komponent. A pro každou komponentu existuje testovací scénář, který bude dále rozdělen v testovacích případech. Níže uvedený diagram představuje totéž:
Cíl testování komponent
Hlavním cílem testování komponent je ověřit chování vstupu / výstupu testovaného objektu. Zajišťuje, že funkčnost testovacího objektu funguje správně a zcela v pořádku podle požadované specifikace.
Vstupy do testování úrovně komponent
Čtyři hlavní vstupy do testování na úrovni komponent jsou:
- Plán zkoušek projektu
- Požadavky na systém
- Specifikace komponent
- Implementace komponent
Kdo provádí testování komponent?
Testování komponent provádějí služby QA nebo tester.
Co se testuje v rámci testování komponent?
Zkoušení komponent může vzít v úvahu ověření funkčních nebo specifických nefunkčních charakteristik komponent systému.
Může to být testování chování zdrojů (např. Určování úniků paměti), testování výkonu, strukturální testování atd.
Když je testování komponent hotovo?
Testování komponent se provádí po testování jednotky.
Komponenty jsou testovány, jakmile jsou vytvořeny, takže je pravděpodobné, že výsledky načtené z testované komponenty budou záviset na dalších komponentách, které se od nynějška nevyvíjejí.
V závislosti na modelu životního cyklu vývoje může být testování komponent prováděno izolovaně s ostatními komponentami systému. Izolace se provádí, aby se zabránilo vnějším vlivům.
K otestování této komponenty tedy používáme pahýly a ovladačepro simulaci rozhraní mezi softwarovými komponentami.
Testování integrace se provádí po testování komponent.
Testovací strategie testování komponent
V závislosti na hloubce úrovně testování je testování komponent rozděleno do dvou částí:
- Testování komponent v malém (ctis)
- Testování komponent ve velkém (CTIL)
Když se testování komponent provádí odděleně od ostatních komponent, nazývá se to testování komponent v malém. To se děje bez zvážení integrace s jinými komponentami.
Pokud se testování komponent provádí bez izolace s ostatními komponentami softwaru, nazývá se to jako testování komponent ve velkém. K tomu dochází, když existuje závislost na toku funkcí komponent, a proto je nemůžeme izolovat.
Pokud ještě nejsou vyvíjeny komponenty, na kterých máme závislost, použijeme místo skutečných komponent fiktivní objekty. Tyto fiktivní objekty jsou útržek (tzv. Funkce) a ovladač (volající funkce).
Pahýly a ovladače
Než skočím na stručnost o Stubs and Drivers, měl bych se stručně seznámit s rozdíl mezi Testy komponent a Testy integrace. Důvod je - Pahýly a ovladače se také používají při testování integrace, takže to může vést k určité záměně mezi těmito dvěma testovacími technikami.
Technika testování integrace je technika, při které postupně kombinujeme 2 komponenty a testujeme integrovaný systém společně. Data z jednoho systému jsou přenášena do jiného systému a správnost dat je ověřována pro integrovaný systém.
Na rozdíl od testování modulů, kde je jednotlivá součást / modul důkladně testována před integrací do jiných komponent. Můžeme tedy říci, že testování komponent se provádí před integračním testováním.
Integrace i použití komponent Pahýly a ovladače .
'Řidiči' jsou fiktivní programy, které se používají k volání funkcí nejnižšího modulu v případě, že volací funkce neexistuje.
„Pahýly“ lze označit jako kód úryvek, který přijímá vstupy / požadavky z horního modulu a vrací výsledky / odpověď
Jak již bylo vysvětleno dříve, komponenty jsou testovány jednotlivě a nezávisle. Mohou tedy existovat některé vlastnosti komponent, v závislosti na jiné komponentě, která není v současné době vyvíjena. K testování komponent s těmito „nevyvinutými“ funkcemi tedy musíme použít některá stimulační činidla, která by data zpracovala a vrátila je volajícím komponentám.
Tímto způsobem zajišťujeme důkladné testování jednotlivých komponent.
Tady vidíme, že:
- C1, C2, C3, C4, C5, C6, C7, C8, C9 ————— jsou komponenty
- C1, C2 a C3 společně tvoří podjednotku 1
- C4 a C5 společně tvoří dílčí jednotku 2
- C6, C7 a C8 společně tvoří dílčí jednotku 3
- Samotná C9 tvoří podjednotku 4
- Sub Unit 1 a Subunit 2 combine to make Business Unit 1
- Sub Unit 3 and Sub Unit 4 combine to make Business Unit 2
- Business Unit 1 and Business Unit 2 combine to make the application.
- Testováním komponent by tedy v tomto případě bylo otestovat jednotlivé komponenty, které jsou C1 až C9.
- The Síť šipka mezi dílčí jednotkou 1 a dílčí jednotkou 2 ukazuje testovací bod integrace.
- Podobně Síť šipka mezi Sub Unit 3 a Sub Unit 4 ukazuje testovací bod integrace
- Zelená šipka mezi Business Unit 1 a Business Unit 2 ukazuje testovací bod integrace
Proto bychom dělali:
- KOMPONENT testování pro C1 až C9
- INTEGRACE testování mezi dílčími jednotkami a obchodními jednotkami
- SYSTÉM testování aplikace jako celku
Příklad
Až dosud jsme museli zjistit, že testování komponent je nějaký druh techniky testování bílé krabice . Může to být správné. To ale neznamená, že tato technika nemohla být použita v testovací technice Black box.
což je lepší linux nebo windows
Zvažte obrovskou webovou aplikaci, která začíná přihlašovací stránkou. Jako tester (to také v agilním světě) jsme se nemohli dočkat, až bude celá aplikace vyvinuta a připravena k testování. Abychom prodloužili dobu potřebnou pro uvedení na trh, musíme začít testovat brzy. Když tedy vidíme, že je přihlašovací stránka vyvinuta, musíme trvat na tom, aby byla zpřístupněna k testování.
Jakmile budete mít k dispozici přihlašovací stránku, kterou můžete otestovat, můžete provést všechny své testovací případy (pozitivní i negativní) a zajistit, aby funkce přihlašovací stránky fungovala podle očekávání.
Výhody testování přihlašovací stránky v tomto okamžiku by byly:
nejlepší mobilní telefon špionážní software pro Android
- Uživatelské rozhraní je testováno na použitelnost (pravopisné chyby, loga, zarovnání, formátování atd.)
- Zkuste použít techniky negativního testování jako autentizace a autorizace. V těchto případech je velká pravděpodobnost zjištění závad.
- Použití technik, jako je SQL Injection by zajistilo otestování narušení bezpečnosti ve velmi rané fázi.
Vady, které byste v této fázi zaznamenali, by pro vývojový tým fungovaly jako „poučení“ a byly by implementovány do kódování následné stránky. Proto včasným testováním jste zajistili lepší kvalitu stránek, které se teprve budou vyvíjet.
Protože další po sobě jdoucí stránky ještě nejsou vyvinuty, budete možná potřebovat stuby k ověření funkčnosti přihlašovací stránky. Například ,možná budete chtít jednoduchou stránku s uvedením „protokolování úspěšné“, v případě správných pověření a vyskakovací okno chybové zprávy v případě nesprávných pověření.
Můžete projít naším dřívějším tutoriálem na Testování integrace získat více informací o Stubs and Drivers.
Jak psát testovací případy komponent?
Testovací případy pro testování komponent jsou odvozeny z pracovních produktů, například ze softwarového designu nebo datového modelu. Každá komponenta je testována prostřednictvím posloupnosti testovacích případů, kde každý testovací případ pokrývá specifickou kombinaci vstupu / výstupu, tj. Dílčí funkčnost.
Níže je ukázka ukázky testovacího případu součásti pro modul přihlášení.
Podobně můžeme psát i další testovací případy.
Testování součástí vs. Testování jednotek
Úplně první rozdíl mezi testováním komponentů a testováním jednotek spočívá v tom, že první testují, zatímco druhý provádějí vývojáři nebo profesionálové z SDET.
Testování jednotek se provádí na granulární úrovni. Na druhou stranu se testování komponent provádí na úrovni aplikace. Při testování jednotky se ověřuje, zda se provádí jednotlivý program nebo část kódu podle zadaného. Při testování komponent je každý objekt softwaru testován samostatně s izolací nebo bez izolace s ostatními komponentami / objektem systému.
Takže testování komponent je docela podobné testování jednotek, ale provádí se na vyšší úrovni integrace a v kontextu aplikace (nejen v kontextu této jednotky / programu jako při testování jednotky).
Součást Vs Rozhraní Vs Integrace Vs Testování systémů
Komponent , jak jsem vysvětlil, je nejnižší jednotka aplikace, která je testována samostatně.
An rozhraní je spojovací vrstva 2 komponent. Testování platformy nebo rozhraní, na kterém tyto 2 komponenty interagují, se nazývá testování rozhraní.
Nyní je testování rozhraní trochu jiné. Tato rozhraní jsou většinou API nebo webové služby , takže testování těchto rozhraní by nebylo podobné technice Black Box, spíše byste prováděli nějaký druh testování API nebo testování webových služeb pomocí SOAP UI nebo jakýkoli jiný nástroj.
Jakmile je testování rozhraní hotové, přichází Testování integrace .
Během testu integrace jednotlivé testované komponenty po sobě kombinujeme a postupně testujeme. Během integrace ověřujeme, že jednotlivé komponenty, pokud jsou kombinovány jedna po druhé, se chovají podle očekávání a data se nezmění při toku z 1 modulu do jiného modulu.
Jakmile jsou všechny komponenty integrovány a otestovány, provádíme Testování systémů otestovat celou aplikaci / systém jako celek. Tento test ověřuje obchodní požadavky oproti implementovanému softwaru.
Závěr
To bych řekl Testování jednotky a Testování komponent probíhá vedle sebe.
Na rozdíl od testování jednotek, které provádí vývojový tým, testování komponent / modulů provádí testovací tým. Před zahájením testování integrace se vždy doporučuje nechat provést průchozí testování komponent.
Pokud je testování komponent pevné, najdeme při testování integrace méně defektů. Byly by problémy, ale tyto problémy by se týkaly integračního prostředí nebo výzev konfigurace. Můžete zajistit, aby funkčnost integrovaných komponent fungovala dobře.
Doufám, že tento výukový program byl užitečný pro pochopení testování komponent, integrace a systému. Pokud máte stále dotazy, neváhejte se nás zeptat v komentářích.
Doporučené čtení
- Nejlepší nástroje pro testování softwaru 2021 [QA Test Automation Tools]
- Co je Testování integrace systému (SIT): Naučte se s příklady
- Testování stahování e-knih Primer
- Co je srovnávací testování (naučit se s příklady)
- Co je testování integrace (kurz s příkladem testování integrace)
- Funkční testování vs. nefunkční testování
- Rozdíly mezi testováním jednotek, testováním integrace a funkčním testováním
- Co je přírůstkové testování: podrobné vysvětlení s příklady