Co je testování ortogonálních polí? (Příklad)
⚡ Chytré shrnutí
Ortogonální testování polí je technika černé skříňky, která využívá statistická pole k vytvoření kompaktní testovací sady, pokrývající každou dvojici vstupních hodnot mnohem menším počtem testovacích případů, než kolik vyžaduje vyčerpávající kombinační testování.

Testování ortogonálního pole
Testování ortogonálního pole (OAT) je technika testování softwaru, která využívá ortogonální pole k vytváření testovacích případů. Jedná se o statistický testovací přístup a je obzvláště užitečný, když testovaný systém přijímá velké množství datových vstupů. Ortogonální testování polí maximalizuje pokrytí testy párováním a kombinováním vstupů, takže systém je procvičován s relativně menším počtem testovacích případů a kratší dobou provádění.
Například při ověření jízdenky na vlak je nutné testovat faktory, jako je počet cestujících, číslo jízdenky, čísla sedadel a čísla vlaků. Testování každého faktoru jednotlivě je pracné. Je efektivnější, když technik QA zkombinuje několik vstupů dohromady a otestuje je v jednom běhu. V takových případech můžeme použít testovací metodu Orthogonal Array.
Tento typ párování nebo kombinování vstupů za účelem úspory času se nazývá párové testování a technika OATS je jedním ze způsobů, jak vytvořit párovou testovací sadu. Protože tato technika pracuje čistě se vstupními hodnotami a očekávanými výsledky, bez jakéhokoli pohledu na interní kód, patří mezi... testování černé skříňky rodina.
Proč OAT (testování ortogonálních polí)?
V současném scénáři se dodání kvalitního softwarového produktu zákazníkovi stalo náročným kvůli složitosti kódu.
V konvenční metodě testovací sady zahrnují testovací případy odvozené z každé kombinace vstupních hodnot a předběžných podmínek. V důsledku toho je třeba pokrýt n testovacích případů.
Ale v reálném scénáři nebudou mít testeři čas na provedení všech testovacích případů a odhalení vad, protože existují i další činnosti, jako je dokumentace, návrhy a zpětná vazba od zákazníka, které je třeba v rámci testovací fáze zohlednit.
Proto chtěli manažeři testů optimalizovat počet a kvalitu testovacích případů, aby zajistili maximum Pokrytí testu s minimálním úsilím. Toto úsilí se nazývá optimalizace testovacích případů.
- Systematický a statistický způsob testování párových interakcí.
- Interakce a integrační body jsou hlavním zdrojem defektů.
- Proveďte dobře definovanou a stručnou sadu testovacích případů, které pravděpodobně odhalí většinu (ne všechny) chyb.
- Ortogonální přístup zaručuje párové pokrytí všech proměnných.
Tato technika se proto nachází vedle ostatních metod snižování vstupů, které tým již používá. Rozdělení ekvivalence a analýza okrajových hodnot rozhodnout, které hodnoty se vyplatí testovat pro jedno pole; ortogonální pole rozhodují, které z těchto hodnot by měly být testovány společně.
Jak je reprezentováno testování ortogonálních polí
Ortogonální pole je popsáno krátkým vzorcem, nikoli svým obsahem. Níže uvedený diagram ukazuje, jak se tři veličiny v tomto vzorci vztahují k tvaru pole.
- Běhy (N) – Počet řádků v poli, což se promítá do počtu vygenerovaných testovacích případů.
- Faktory (K) – Počet sloupců v poli, což se promítá do maximálního počtu proměnných, které lze zpracovat.
- Úrovně (V) – Maximální počet hodnot, které lze nabrat pro jakýkoli jeden faktor.
Jeden faktor má obvykle 2 až 3 vstupy k testování. Tento maximální počet vstupů určuje úrovně.
Přečtěte si název pole zleva doprava. V L9(34) Číslo 9 je počet běhů, 3 je počet úrovní, které může každý faktor nabývat, a horní index 4 je počet faktorů. Ve stejném článku se používá L4(23), což jsou čtyři běhy pro tři faktory, z nichž každý má dvě úrovně.
Dvě vlastnosti dělají pole ortogonální a obě musí být splněny, než lze důvěřovat počtu běhů:
- Váhy: Každá úroveň faktoru se ve svém vlastním sloupci objevuje stejněkrát.
- Párová úplnost: Pro libovolné dva sloupce se každá kombinace jedné úrovně z každého sloupce objeví stejněkrát.
Pokud druhá vlastnost selže, tabulka je jednoduše zkrácenou testovací sadou, nikoli ortogonálním polem, a párová záruka, která ospravedlňuje redukci, již neplatí.
Jak provést testování ortogonálního pole: Příklady
- Identifikujte nezávislou proměnnou pro scénář.
- Najděte nejmenší pole s počtem běhů.
- Namapujte faktory na pole.
- Vyberte hodnoty pro všechny „zbývající“ úrovně.
- Přepište běhy do testovací případy, přidáváním jakýchkoli obzvláště podezřelých kombinací, které nebyly vygenerovány.
Dva níže uvedené příklady aplikují těchto pět kroků, nejprve na malý dvouúrovňový problém a poté na větší tříúrovňový problém.
Příklad 1
Webová stránka má tři odlišné části (horní, střední, dolní), které lze před uživatelem jednotlivě zobrazit nebo skrýt.
- Počet faktorů = 3 (nahoře, uprostřed, dole)
- Počet úrovní (viditelnost) = 2 (skryté nebo zobrazené)
- Typ pole = L4(23)
(4 je počet běhů dosažených po vytvoření pole OAT)
Pokud zvolíme konvenční techniku změny jedné sekce po druhé, potřebujeme testovací případy, například 2 x 3 = 6 testovacích případů.
| testovacích případů | Scénáře | Hodnoty k testování |
|---|---|---|
| Test #1 | HIDDEN | Top |
| Test #2 | ZOBRAZENO | Top |
| Test #3 | HIDDEN | Spodní část |
| Test #4 | ZOBRAZENO | Spodní část |
| Test #5 | HIDDEN | Střední |
| Test #6 | ZOBRAZENO | Střední |
Těchto šest běhů mění jednu sekci najednou a nikdy neumisťují dvě sekce do zvoleného stavu současně. Testování každé kombinace by místo toho trvalo 23 = 8 běhů.
Pokud jdeme na testování OAT, potřebujeme 4 testovací případy, jak je uvedeno níže:
| testovacích případů | VÝŠKA | Střední | Spodní část |
|---|---|---|---|
| Test #1 | Skrytý | Skrytý | Skrytý |
| Test #2 | Skrytý | viditelný | viditelný |
| Test #3 | viditelný | Skrytý | viditelný |
| Test #4 | viditelný | viditelný | Skrytý |
Zkontrolujte libovolné dva sloupce této tabulky a všechny čtyři páry Skrytý/Viditelný se objeví právě jednou, což je vlastnost ortogonality v nejmenší formě.
Příklad 2
Funkčnost mikroprocesoru musí být otestována:
- Teplota: 100C, 150C a 200C.
- Tlak: 2 psi, 5 psi a 8 psi
- Doping Částka: 4 %, 6 % a 8 %
- Rychlost usazování: 0.1 mg/s, 0.2 mg/s a 0.3 mg/s
Použitím konvenční metody potřebujeme 34 = 81 testovacích případů pro pokrytí všech vstupů. Pracujme místo toho s metodou OATS:
Počet faktorů = 4 (teplota, tlak,ping množství a rychlost ukládání)
Úrovně = 3 úrovně na faktor (teplota má 3 úrovně – 100 °C, 150 °C a 200 °C – a podobně i ostatní faktory mají každý 3 úrovně)
Vytvořte pole, jak je uvedeno níže:
1. Sloupce s počtem faktorů
| Modelový případ # | teplota | Tlak | Doping částka | Depoziční rychlost |
|---|
2. Zadejte počet řádků rovný počtu úrovní na faktor. Např. teplota má 3 úrovně. Proto vložte 3 řádky pro každou úroveň teploty,
| Modelový případ # | teplota | Tlak | Doping částka | Depoziční rychlost |
|---|---|---|---|---|
| 1 | 100C | |||
| 2 | 100C | |||
| 3 | 100C | |||
| 4 | 150C | |||
| 5 | 150C | |||
| 6 | 150C | |||
| 7 | 200C | |||
| 8 | 200C | |||
| 9 | 200C |
3. Nyní rozdělte tlak,ping množství a rychlosti depozice ve sloupcích.
Např.: Zadejte 2 psi pro teploty 100 °C, 150 °C a 200 °C, podobně zadejte doping částka 4 % pro 100 °C, 150 °C a 200 °C atd.
| Modelový případ # | teplota | Tlak | Doping částka | Depoziční rychlost |
|---|---|---|---|---|
| 1 | 100C | 2 psi | 4% | 0.1 mg/s |
| 2 | 100C | 5 psi | 6% | 0.2 mg/s |
| 3 | 100C | 8 psi | 8% | 0.3 mg/s |
| 4 | 150C | 2 psi | 4% | 0.1 mg/s |
| 5 | 150C | 5 psi | 6% | 0.2 mg/s |
| 6 | 150C | 8 psi | 8% | 0.3 mg/s |
| 7 | 200C | 2 psi | 4% | 0.1 mg/s |
| 8 | 200C | 5 psi | 6% | 0.2 mg/s |
| 9 | 200C | 8 psi | 8% | 0.3 mg/s |
V OA tedy potřebujeme k pokrytí 9 testovacích případů.
Poznámka k přesnosti: vyplňte zbývající tři sloupce přímo dolů, stejně jako v kroku 3, opakujte stejný tlak, proveďteping a usazeniny se uvnitř každého teplotního bloku ztrojnásobují. Tlak aping množství se proto pohybují společně a páry jako 2 psi s 6 % se nikdy neobjeví, takže devět řádků výše představuje spíše redukovanou testovací sadu než skutečné ortogonální pole. Vyvážený L9(34) pole níže zachovává stejných devět běhů a zároveň pokrývá všech devět párů úrovní mezi každými dvěma faktory.
| Modelový případ # | teplota | Tlak | Doping částka | Depoziční rychlost |
|---|---|---|---|---|
| 1 | 100C | 2 psi | 4% | 0.1 mg/s |
| 2 | 100C | 5 psi | 6% | 0.2 mg/s |
| 3 | 100C | 8 psi | 8% | 0.3 mg/s |
| 4 | 150C | 2 psi | 6% | 0.3 mg/s |
| 5 | 150C | 5 psi | 8% | 0.1 mg/s |
| 6 | 150C | 8 psi | 4% | 0.2 mg/s |
| 7 | 200C | 2 psi | 8% | 0.2 mg/s |
| 8 | 200C | 5 psi | 4% | 0.3 mg/s |
| 9 | 200C | 8 psi | 6% | 0.1 mg/s |
Ortogonální testování polí vs. párové testování (všechny páry)
Tyto dva termíny se v mnoha týmech používají zaměnitelně, přesto nejsou identické. Oba se zaměřují na dvojice hodnot, ale liší se v tom, jak striktně je výsledná tabulka omezena.
| Vzhled | Testování ortogonálních polí | Párové (všechny páry) testování |
|---|---|---|
| Podkladová struktura | Ortogonální pole, převzaté z návrhu experimentů | Pokrývající pole, generované vyhledávacím algoritmem |
| Pravidlo krytí | Každá dvojice se objeví stejněkrát | Každý pár se objeví alespoň jednou |
| Faktory s nestejnými úrovněmi | Vyžaduje pole se smíšenou úrovní, které pro požadovaný tvar nemusí existovat. | Ovládáno přímo generátorem |
| Typický počet běhů | Stejná nebo mírně vyšší, kvůli požadavku na vyváženost | Stejné nebo nižší pro stejné vstupy |
| Omezení mezi hodnotami | Obtížné vyjádření uvnitř pole | Podporováno většinou moderních generátorů |
V praxi je vyvážené ortogonální pole jasnějším výukovým modelem a bezpečnější volbou, když faktory sdílejí stejný počet úrovní, zatímco krycí pole je to, co většina nástrojů vytváří pro reálné projekty s nepraktickými, nerovnými vstupy. Oba se vzájemně doplňují. testování rozhodovacích tabulek a testování přechodu stavů, které se zaměřují spíše na obchodní pravidla a posloupnost než na kombinace hodnot.
Nástroje pro testování ortogonálních polí
Ruční sestavení pole je praktické pouze pro výše uvedené malé příklady. Nad čtyři nebo pět faktorů týmy používají generátor a nástroj za ně rozhoduje o počtu běhů.
- OBRÁZEK: generátor příkazového řádku s otevřeným zdrojovým kódem od MicrosoftParametry a jejich hodnoty jsou zapsány v souboru modelu ve formátu prostého textu a nástroj vytiskne sadu kombinací. Jsou podporována omezení a podmodely, což je důležité, když jsou určité páry hodnot neplatné. Viz Úložiště PICT.
- SKUTY: výzkumný nástroj od NIST, který generuje krycí pole pro obousměrné až šestisměrné pokrytí a také publikuje knihovnu předem vypočítaných polí. Je k dispozici na Projekt kombinatorického testování NIST.
- Komerční kombinatorické platformy: hostované nástroje přidají požadavek tracsnadnost, očekávané výsledky a export do systému pro správu testů, což je vhodné pro větší týmy, které potřebují auditní záznam.
- Publikované knihovny polí: Standardní pole jako L4, L8, L9, L16 a L18 jsou tabelována a lze je přímo kopírovat, pokud se počty faktorů a úrovní shodují.
Ať už nástroj tabulku vytváří jakýkoli, vygenerované řádky je stále nutné převést na spustitelné případy se skutečnými daty a očekávanými výsledky a poté je naplánovat jako v jakékoli jiné sadě nástrojů uvnitř. techniky testování softwaru již v projektu používán.
Výhody testování ortogonálních polí
- Garantuje testování párových kombinací všech vybraných proměnných.
- Snižuje počet testovacích případů.
- Vytváří méně testovacích případů, které stále pokrývají interakci každé dvojice proměnných.
- Lze zpracovat složitou kombinaci proměnných.
- Generování je jednodušší a méně náchylné k chybám než testovací sady vytvořené ručně.
- Je to užitečné pro Testování integracea stejně užitečné pro testování konfigurace, kde se rychle množí kombinace prohlížečů, operačních systémů a zařízení.
- Zvyšuje produktivitu díky zkrácení testovacích cyklů a testovacích časů.
Šetřící sloučeniny během regresní testování, protože menší vyvážená sada je dostatečně levná na to, aby se dala spustit každý cyklus znovu, zatímco vyčerpávající kombinovaná sada se obvykle spustí jednou a poté se tiše opustí.
Nevýhody testování ortogonálních polí
- S rostoucím objemem vstupních dat se zvyšuje složitost návrhu testovacího případu. V důsledku toho se zvyšuje manuální úsilí a čas strávený testováním a testeři se musí snažit... Testování automatizace.
- Párové pokrytí není úplné pokrytí. Defekt, který se objeví pouze tehdy, když se pohromadě vyskytnou tři specifické hodnoty, může polem projít beze změny.
- Faktory s různým počtem úrovní se nemapují čistě na standardní pole, takže je potřeba pole se smíšenými úrovněmi nebo generátor pokrývajících polí.
- Výběr úrovní je otázkou úsudku. Pokud je důležitá hodnota vynechána ze vstupního modelu, žádné pole ji nemůže obnovit.
- Omezení mezi hodnotami, například platební metoda platná pouze v jedné zemi, se obtížně vyjadřují a obvykle vedou k neplatným řádkům, které je nutné ručně odstranit.
Žádné z těchto omezení tuto techniku nevylučuje; pouze stanovují její hranice. Ortogonální pole redukují problém kombinací, zatímco analýza rizik a testování domén rozhodněte, které faktory si zaslouží místo v modelu od začátku.
Chyby nebo chyby při provádění OAT
- Zaměření testovacího úsilí na nesprávnou oblast aplikace.
- Výběr nesprávných parametrů pro kombinování.
- Použití ortogonálního testování polí, kde je vstupní sada dostatečně malá pro vyčerpávající testování.
- Ruční aplikace testování ortogonálních polí na model dostatečně velký pro použití generátoru.
- Spoléhání se pouze na testování ortogonálních polí pro vysoce rizikové aplikace, kde je vyžadováno hlubší pokrytí.
Poslední položka je ta, která v praxi způsobuje největší škody. U bezpečnostního nebo finančního prvku je párová sada spíše spodní než horní hranicí a obvykle je doplněna cílenými případy na testování systému úrovni a s širším plánem popsaným v typy testování softwaru.

