Pokrytí testů v testování softwaru
Co je testovací pokrytí?
Testovací pokrytí je definováno jako metrika v Testování softwaru, která měří množství testů provedených sadou testů. Bude zahrnovat shromažďování informací o tom, které části programu se spouštějí při spuštění testovací sady, aby se určilo, které větve podmíněných příkazů byly použity.
Jednoduše řečeno, je to technika, která zajišťuje, že vaše testy testují váš kód nebo kolik kódu jste spuštěním testu uplatnili.
Co dělá testovací pokrytí?
- Nalezení oblasti požadavku neimplementovaného sadou testovacích případů
- Pomáhá vytvářet další testovací případy pro zvýšení pokrytí
- Identifikace kvantitativní míry pokrytí testem, což je nepřímá metoda kontroly kvality
- Identifikace nesmyslných testovacích případů, které nezvyšují pokrytí
Jak lze dosáhnout pokrytí testem?
- Testovací pokrytí lze provést cvičením technik statické kontroly, jako jsou vzájemné recenze, inspekce a návod
- Transformací ad-hoc defektů do spustitelných testovacích případů
- Na úrovni kódu nebo na úrovni testu jednotek lze pokrytí testem dosáhnout využitím nástrojů pro automatické pokrytí kódu nebo testování jednotek
- Pokrytí funkčních testů lze provést pomocí vhodných nástrojů pro správu testů
Výhody testovacího pokrytí v softwarovém inženýrství
- Může zajistit kvalitu testu
- Může pomoci určit, které části kódu byly skutečně dotčeny při vydání nebo opravě
- Může pomoci určit cesty ve vaší aplikaci, které nebyly testovány
- Zabránit Přeběhnout unikání
- Čas, rozsah a náklady lze mít pod kontrolou
- Prevence defektů v rané fázi životního cyklu projektu
- Dokáže určit všechny rozhodovací body a cesty používané v aplikaci, což umožňuje zvýšit pokrytí testem
- Mezery v požadavcích, testovacích případech a defekty na úrovni jednotky a kódu lze najít jednoduchým způsobem
Jaké jsou hlavní rozdíly mezi pokrytím kódu a testovacím pokrytím?
Pokrytí kódu a testovací pokrytí jsou techniky měření, které vám umožňují posoudit kvalitu kódu vaší aplikace.
Zde jsou některé kritické rozdíly mezi kabinami těchto metod pokrytí:
parametry | Pokrytí kódu | Pokrytí testu |
---|---|---|
Definice | Termín pokrytí kódu používaný při použití kódu aplikace, když je aplikace spuštěna. | Testovací pokrytí znamená celkový testovací plán. |
Cíl | Metriky pokrytí kódu mohou týmu pomoci sledovat jejich automatizované testy. | Testovací pokrytí obsahuje podrobnosti o úrovni, na kterou bylo testováno psané kódování aplikace. |
Podtypy | Pokrytí kódu rozdělené podle podtypů, jako je pokrytí prohlášení, pokrytí podmínek, pokrytí pobočky, pokrytí Toogle, pokrytí FSM. | Žádný podtyp metody pokrytí testem. |
Testovací vzorec pokrytí
Chcete-li vypočítat pokrytí testem, musíte postupovat podle níže uvedených kroků:
Krok 1) Celkový počet řádků kódu ve vaší kvalitě softwaru Testování
Krok 2) Počet řádků kódu, které jsou aktuálně provedeny ve všech testovacích případech
Nyní musíte najít (X děleno Y) vynásobené 100. Výsledkem tohoto výpočtu je procento pokrytí vašeho testu.
Například:
Pokud je počet řádků kódu v systémové komponentě 500 a počet řádků provedených ve všech existujících testovacích případech je 50, pak je vaše testovací pokrytí:
(50 / 500) * 100 = 10%
Příklady testovacího pokrytí
Příklad 1:
Pokud je například „nůž“ položkou, kterou chcete otestovat. Pak se musíte zaměřit na kontrolu, zda krájí zeleninu nebo ovoce přesně nebo ne. Existují však další aspekty, které je třeba hledat, protože uživatel by s tím měl být schopen pohodlně manipulovat.
Příklad 2:
Například pokud chcete zkontrolovat aplikaci poznámkového bloku. Pak je nutností zkontrolovat jeho základní vlastnosti. Musíte však pokrýt další aspekty, protože aplikace Poznámkový blok při používání jiných aplikací reaguje očekávaně, uživatel rozumí použití aplikace, nespadne, když se uživatel pokusí udělat něco neobvyklého atd.
Nevýhody testovacího pokrytí:
- Většina úloh v testovacím pokrytí je manuální, protože neexistují žádné nástroje k automatizaci. Analyzovat požadavky a vytvářet testovací případy proto vyžaduje hodně úsilí.
- Testovací pokrytí vám umožňuje spočítat funkce a poté měřit s několika testy. Vždy je však prostor pro chyby v úsudku.