Testování pokrytí při testování softwaru

Obsah:

Anonim

Co je Pokrytí testu?

Pokrytí testu je definováno jako metrika v Testování softwaru, která měří rozsah testování provedeného sadou testů. Bude zahrnovat shromažďování informací o tom, které části programu jsou spuštěny při spuštění testovací sady, aby bylo možné určit, které větve podmíněných příkazů byly přijaty.

Jednoduše řečeno, jedná se o techniku, která zajistí, že vaše testy budou testovat váš kód nebo kolik z vašeho kódu jste provedli spuštěním testu.

V tomto výukovém programu se naučíte

  • Co je Pokrytí testu?
  • Co test pokrytí dělá?
  • Jak lze dosáhnout pokrytí testu?
  • Výhody pokrytí testu
  • Jaké jsou hlavní rozdíly mezi pokrytím kódu a pokrytím testu?
  • Vzorec pro výpočet pokrytí testu
  • Příklady pokrytí testu
    • Příklad 1:
    • Příklad 2:
  • Nevýhody:

Co test pokrytí dělá?

  • Nalezení oblasti požadavku, která není implementována sadou testovacích případů
  • Pomáhá vytvářet další testovací případy ke zvýšení pokrytí
  • Identifikace kvantitativního měřítka 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í testu?

  • Pokrytí testu lze provést procvičením technik statické kontroly, jako jsou peer reviews, kontroly a návod
  • Transformací vad ad-hoc na spustitelné testovací případy
  • Na úrovni kódu nebo na úrovni testu jednotky lze pokrytí testu dosáhnout využitím nástrojů pro automatické pokrytí kódu nebo pokrytí testu jednotky
  • Pokrytí funkčních testů lze provést pomocí správných nástrojů pro správu testů

Výhody pokrytí testu

  • Může zajistit kvalitu testu
  • Může pomoci určit, kterých částí kódu se skutečně dotklo vydání nebo oprava
  • Může pomoci určit cesty ve vaší aplikaci, které nebyly testovány
  • Zabraňte úniku vady
  • Čas, rozsah a náklady lze udržovat pod kontrolou
  • Prevence defektů v rané fázi životního cyklu projektu
  • Může určit všechny rozhodovací body a cesty použité v aplikaci, což vám umožní zvýšit pokrytí testem
  • Mezery v požadavcích, testovacích případech a defektech na úrovni jednotky a kódu lze snadno najít

Jaké jsou hlavní rozdíly mezi pokrytím kódu a pokrytím testu?

Pokrytí kódu a pokrytí testu jsou měřicí techniky, které vám umožní posoudit kvalitu kódu vaší aplikace.

Zde jsou některé kritické rozdíly mezi stánky těchto metod pokrytí:

Parametry Pokrytí kódu Pokrytí testu
Definice Termín pokrytí kódu používaný při provádění kódu aplikace při spuštění aplikace. Pokrytí testu znamená celkový plán testu.
Fotbalová branka Metriky pokrytí kódu mohou týmu pomoci monitorovat jejich automatizované testy. Pokrytí testu uvádí podrobnosti o úrovni, na kterou bylo testováno psané kódování aplikace.
Podtypy Pokrytí kódu rozdělené podle podtypů, jako je pokrytí výpisů, pokrytí podmínek, pokrytí poboček, pokrytí Toogle, pokrytí FSM. Žádný podtyp metody pokrytí testu.

Vzorec pro výpočet pokrytí testu

Chcete-li vypočítat pokrytí testem, musíte postupovat podle níže uvedených kroků:

Krok 1) Celkový počet řádků kódu v kvalitě softwaru, kterou testujete

Krok 2) Počet řádků kódu, které všechny testovací případy aktuálně provádějí

Nyní musíte najít (X děleno Y) vynásobené 100. Výsledkem tohoto výpočtu je vaše pokrytí testem v%.

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 pokrytí testu

Příklad 1:

Pokud je například „nůž“ položka, kterou chcete otestovat. Pak se musíte zaměřit na kontrolu, zda krájí zeleninu nebo ovoce přesně nebo ne. Existují však i další aspekty, které by měl uživatel hledat, aby jej zvládl pohodlně.

Příklad 2:

Například pokud chcete zkontrolovat aplikaci poznámkového bloku. Pak je kontrola jeho základních funkcí nutností. Musíte však pokrýt další aspekty, protože aplikace poznámkového bloku očekává očekávání při používání jiných aplikací, uživatel chápe použití aplikace, nepadne, když se uživatel pokusí udělat něco neobvyklého atd.

Nevýhody:

  • Většina úkolů v manuálu pokrytí testu, protože neexistují žádné nástroje k automatizaci. Analyzovat požadavky a vytvářet testovací případy proto vyžaduje značné úsilí.
  • Testovací pokrytí umožňuje počítat funkce a poté měřit proti několika testům. Vždy však existuje prostor pro chyby v úsudku.