Co je modelové testování?

Co je modelové testování?

Testování založené na modelu je technika testování softwaru, kde se chování testovaného softwaru za běhu kontroluje proti předpovědím vytvořeným modelem. Model je popis chování systému. Chování lze popsat pomocí vstupních sekvencí, akcí, podmínek, výstupu a toku dat ze vstupu na výstup. Měl by být prakticky srozumitelný a může být znovu použitelný; sdílet musí mít přesný popis testovaného systému.

Existuje mnoho dostupných modelů a popisuje různé aspekty chování systému. Příklady modelu jsou:

  • Datový tok
  • Řídicí tok
  • Grafy závislostí
  • Rozhodovací tabulky
  • Stavové přechodové stroje

Testování založené na modelu popisuje, jak se systém chová v reakci na akci (určenou modelem). Zajistěte akci a zjistěte, zda systém reaguje podle očekávání.

Je to lehká formální metoda pro ověření systému. Toto testování lze aplikovat na testování hardwaru i softwaru.

Příklad testování na základě modelu

Testování založené na modelu

Výše uvedený model vysvětluje zjednodušený přístup k psaní poezie v poznámkovém bloku a možné akce související s každým krokem. Pro každou akci (např. spuštění, zadání básně, uložení), Testovací případ lze generovat a výstup lze ověřit.

Typy MBT

Existují dva typy testovacích rámců založených na modelu –

  1. Offline / a priori: Generování testovacích sad před jejich provedením. Testovací sada není nic jiného než sbírka testovacích případů.
  2. Online/on-the-fly: Generování testovacích sad během provádění testu

Různé modely v testování

Abychom porozuměli MBT, je nutné porozumět některým z níže vysvětlených modelů. Pojďme si je projít jeden po druhém:

Konečné státní stroje

Tento model pomáhá testerům posoudit výsledek v závislosti na zvoleném vstupu. Různé kombinace vstupů mohou vést k odpovídajícímu stavu systému.

Systém bude mít specifický stav a aktuální stav, který se řídí sadou vstupů zadaných testery.

Zvažte příklad -

Existuje systém, který umožňuje zaměstnancům přihlásit se do aplikace. Nyní je aktuální stav zaměstnance „Mimo“ a po přihlášení do systému se stal „In“. Ve stavu „v“ může zaměstnanec prohlížet, tisknout a skenovat dokumenty v systému.

Konečné státní stroje

Státní grafy

Jedná se o rozšíření konečného automatu a lze jej použít pro komplexní systémy v reálném čase. Stavové diagramy se používají k popisu různých chování systému. Má určitý počet států. Chování systému je analyzováno a reprezentováno ve formě událostí pro každý stav.

Například -

Defekty jsou vyvolány v nástroji pro správu defektů se stavem Nové. Jakmile to vývojáři opraví, musí se změnit na stav Opraveno. Pokud závada není opravena, změňte stav na Znovu otevřít. Stavové mapy by měly být navrženy tak, aby vyžadovaly událost pro každý stát.

Státní grafy

Unified Modeling Language (UML)

Unifikovaný Modelovací Jazyk (UML) je standardizovaný univerzální modelovací jazyk. UML obsahuje sadu technik grafického zápisu pro vytváření vizuálních modelů, které dokážou popsat velmi komplikované chování systému.

UML má zápisy jako:

  • Novinky
  • Herci
  • Obchodní proces
  • Komponenty
  • Programovací jazyk

Unifikovaný Modelovací Jazyk

Výzvy modelového testování

Nasazení MBT v každé organizaci samozřejmě vyžaduje velké množství investic a úsilí. Níže jsou uvedeny nevýhody MBT in Softwarové inženýrství.

  • Nezbytné dovednosti požadované u testerů
  • Čas křivky učení bude delší
  • Je těžké pochopit samotný model

Výhody testování modelů

Výhody MBT jsou následující:

  • Snadná údržba testovacího případu/sady
  • Snížení nákladů
  • Vylepšené testovací pokrytí
  • Může provádět různé testy na n počtu strojů
  • Včasná detekce závady
  • Zvýšení počtu defektů
  • Úspora času
  • Lepší spokojenost s prací testera

Proč investovat do čističky vzduchu?

Testeři stejně během testování konstruují mentální modely. Tyto mentální modely lze přeměnit na modely na papíře. To pomáhá testerům dosáhnout čitelnosti a opětovné použitelnosti.

Testování založené na modelu je nový přístup testování softwaru. Vývoj testování softwaru je uveden níže –

Evolutoin Testování Software