Co to jest testowanie układu ortogonalnego? (Przykład)
⚡ Inteligentne podsumowanie
Testowanie tablic ortogonalnych to technika czarnej skrzynki, która polega na użyciu tablic statystycznych w celu zbudowania kompaktowego zestawu testowego obejmującego każdą parę wartości wejściowych przy użyciu znacznie mniejszej liczby przypadków testowych niż jest to wymagane w przypadku wyczerpujących testów kombinowanych.

Testowanie układu ortogonalnego
Testowanie układu ortogonalnego (OAT) to technika testowania oprogramowania wykorzystująca tablice ortogonalne do tworzenia przypadków testowych. Jest to podejście do testowania statystycznego, szczególnie przydatne, gdy testowany system akceptuje dużą liczbę danych wejściowych. Testowanie tablic ortogonalnych maksymalizuje pokrycie testowe poprzez parowanie i łączenie danych wejściowych, dzięki czemu system jest testowany przy stosunkowo mniejszej liczbie przypadków testowych i krótszym czasie wykonania.
Na przykład, gdy trzeba zweryfikować bilet kolejowy, należy przetestować takie czynniki, jak liczba pasażerów, numer biletu, numery miejsc i numery pociągów. Testowanie każdego czynnika osobno jest uciążliwe. Bardziej efektywne jest połączenie kilku danych wejściowych przez inżyniera ds. zapewnienia jakości i przetestowanie ich w jednym przebiegu. W takich przypadkach możemy zastosować metodę testowania tablic ortogonalnych.
Ten rodzaj parowania lub łączenia danych wejściowych w celu zaoszczędzenia czasu nazywa się testowaniem parami, a technika OATS jest jednym ze sposobów tworzenia zestawu testów parami. Ponieważ technika ta działa wyłącznie na podstawie wartości wejściowych i oczekiwanych wyników, bez żadnego wglądu w kod wewnętrzny, należy do… testy czarnej skrzynki rodzina.
Dlaczego OAT (testowanie układu ortogonalnego)?
W obecnej sytuacji dostarczenie klientowi produktu programistycznego wysokiej jakości stało się trudne ze względu na złożoność kodu.
W metodzie konwencjonalnej zestawy testowe zawierają przypadki testowe wyprowadzone z każdej kombinacji wartości wejściowych i warunków wstępnych. W rezultacie konieczne jest pokrycie n przypadków testowych.
Jednak w rzeczywistym scenariuszu testerzy nie będą mieli czasu na wykonanie wszystkich przypadków testowych w celu odkrycia usterek, ponieważ w fazie testowania muszą wykonać inne czynności, takie jak przygotowanie dokumentacji, uzyskanie sugestii i informacji zwrotnych od klienta.
Dlatego menedżerowie testów chcieli zoptymalizować liczbę i jakość przypadków testowych, aby zapewnić maksimum Pokrycie testowe z minimalnym wysiłkiem. Ten wysiłek nazywa się optymalizacją przypadków testowych.
- Systematyczny i statystyczny sposób testowania interakcji parami.
- Interakcje i punkty integracji są głównym źródłem defektów.
- Wykonaj jasno zdefiniowany, zwięzły zestaw przypadków testowych, które najprawdopodobniej wykryją większość (nie wszystkie) błędów.
- Podejście ortogonalne gwarantuje parami pokrycie wszystkich zmiennych.
Technika ta jest zatem uzupełnieniem innych metod redukcji nakładów, z których zespół już korzysta. Podział równoważności i analiza wartości brzegowych decydują, które wartości warto testować dla pojedynczego pola; tablice ortogonalne decydują, które z tych wartości należy testować razem.
Jak przedstawia się testowanie tablic ortogonalnych
Tablicę ortogonalną opisuje się za pomocą krótkiego wzoru, a nie za pomocą jej zawartości. Poniższy diagram pokazuje, jak trzy wielkości w tym wzorze odnoszą się do kształtu tablicy.
- Biegi (N) – Liczba wierszy w tablicy, która przekłada się na liczbę przypadków testowych, które zostaną wygenerowane.
- Czynniki (K) – Liczba kolumn w tablicy, która przekłada się na maksymalną liczbę zmiennych, jakie można obsłużyć.
- Poziomy (V) – Maksymalna liczba wartości, jakie można przyjąć dla dowolnego pojedynczego czynnika.
Pojedynczy czynnik zazwyczaj wymaga przetestowania od 2 do 3 danych wejściowych. Ta maksymalna liczba danych wejściowych decyduje o poziomach.
Przeczytaj nazwę tablicy od lewej do prawej. L9(34) 9 to liczba przebiegów, 3 to liczba poziomów, jakie może przyjąć każdy czynnik, a indeks górny 4 to liczba czynników. W tym samym artykule użyto L4(23), czyli cztery przebiegi dla trzech czynników, z których każdy ma dwa poziomy.
Dwie właściwości sprawiają, że tablica jest ortogonalna, i obie muszą być spełnione, aby można było uznać liczbę przebiegów za wiarygodną:
- Bilans: każdy poziom czynnika pojawia się tyle samo razy w swojej własnej kolumnie.
- Kompletność parami: w przypadku dowolnych dwóch kolumn każda kombinacja jednego poziomu z każdej pojawia się tyle samo razy.
Jeśli druga właściwość nie jest spełniona, tabela staje się po prostu skróconym zestawem testowym, a nie tablicą ortogonalną, a gwarancja parowania uzasadniająca redukcję przestaje obowiązywać.
Jak przeprowadzić testowanie układu ortogonalnego: przykłady
- Zidentyfikuj zmienną niezależną dla scenariusza.
- Znajdź najmniejszą tablicę z liczbą przebiegów.
- Przypisz czynniki do tablicy.
- Wybierz wartości dla pozostałych poziomów.
- Transkrybuj biegi do przypadki testowe, dodając wszelkie szczególnie podejrzane kombinacje, które nie zostały wygenerowane.
Poniższe dwa przykłady praktyczne stosują te pięć kroków, najpierw do małego problemu dwupoziomowego, a następnie do większego problemu trzypoziomowego.
1 przykład
Strona internetowa składa się z trzech odrębnych sekcji (Góra, Środek, Dół), które mogą być osobno wyświetlane lub ukryte przed użytkownikiem.
- Liczba współczynników = 3 (góra, środek, dół)
- Liczba poziomów (widoczność) = 2 (ukryte lub pokazane)
- Typ tablicy = L4(23)
(4 to liczba przebiegów uzyskana po utworzeniu tablicy OAT)
Jeśli zdecydujemy się na konwencjonalną technikę zmiany jednej sekcji na raz, będziemy potrzebować przypadków testowych, takich jak 2 X 3 = 6 przypadków testowych.
| Przypadki testowe | scenariusze | Wartości do przetestowania |
|---|---|---|
| Test #1 | UKRYTE | Topy |
| Test #2 | POKAZANE | Topy |
| Test #3 | UKRYTE | Dolny |
| Test #4 | POKAZANE | Dolny |
| Test #5 | UKRYTE | Środkowy |
| Test #6 | POKAZANE | Środkowy |
Te sześć przebiegów zmienia się sekcja po sekcji i nigdy nie umieszcza dwóch sekcji w wybranym stanie razem. Zamiast tego testowanie każdej kombinacji zajęłoby 23 = 8 przebiegów.
Jeśli zdecydujemy się na testowanie OAT, potrzebujemy 4 przypadków testowych, jak pokazano poniżej:
| Przypadki testowe | TOP | Środkowy | Dolny |
|---|---|---|---|
| Test #1 | Ukryty | Ukryty | Ukryty |
| Test #2 | Ukryty | Statystyki | Statystyki |
| Test #3 | Statystyki | Ukryty | Statystyki |
| Test #4 | Statystyki | Statystyki | Ukryty |
Sprawdź dowolne dwie kolumny tej tabeli, a wszystkie cztery pary Ukryte/Widoczne pojawią się dokładnie raz, co jest własnością ortogonalności w jej najmniejszej formie.
2 przykład
Należy przetestować funkcjonalność mikroprocesora:
- Temperatura: 100C, 150C i 200C.
- Ciśnienie: 2 psi, 5 psi i 8 psi
- Doping Kwota: 4%, 6% i 8%
- Szybkość depozycji: 0.1 mg/s, 0.2 mg/s i 0.3 mg/s
Stosując metodę konwencjonalną potrzebujemy 34 = 81 przypadków testowych obejmujących wszystkie dane wejściowe. Zamiast tego zastosujmy metodę OATS:
Liczba czynników = 4 (temperatura, ciśnienie,ping kwota i stopa depozytu)
Poziomy = 3 poziomy na czynnik (temperatura ma 3 poziomy – 100°C, 150°C i 200°C – podobnie jak pozostałe czynniki, które również mają po 3 poziomy)
Utwórz tablicę jak poniżej:
1. Kolumny z liczbą czynników
| Przypadek testowy nr | Temperatura | Nacisk | Doping ilość | Szybkość osadzania |
|---|
2. Wprowadź liczbę wierszy równą poziomom dla każdego współczynnika, np. temperatura ma 3 poziomy. Wprowadź zatem 3 wiersze dla każdego poziomu temperatury.
| Przypadek testowy nr | Temperatura | Nacisk | Doping ilość | Szybkość osadzania |
|---|---|---|---|---|
| 1 | 100C | |||
| 2 | 100C | |||
| 3 | 100C | |||
| 4 | 150C | |||
| 5 | 150C | |||
| 6 | 150C | |||
| 7 | 200C | |||
| 8 | 200C | |||
| 9 | 200C |
3. Teraz podziel ciśnienie, zróbping kwoty i stawki depozytów w kolumnach.
Np.: Wprowadź 2 psi dla temperatur 100°C, 150°C i 200°C, podobnie wprowadź doping ilość 4% dla 100C, 150C i 200C itd.
| Przypadek testowy nr | Temperatura | Nacisk | Doping ilość | Szybkość osadzania |
|---|---|---|---|---|
| 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 |
Dlatego w otwartych przestrzeniach potrzebujemy 9 przypadków testowych do omówienia.
Uwaga dotycząca dokładności: wypełniając pozostałe trzy kolumny prosto w dół, tak jak w kroku 3, powtarzamy to samo ciśnienie,ping i osadzanie potrójne wewnątrz każdego bloku temperaturowego. Ciśnienie iping Kwota zatem porusza się razem, a pary takie jak 2 psi z 6% nigdy się nie pojawiają, więc dziewięć wierszy powyżej to zredukowany zestaw testowy, a nie prawdziwa tablica ortogonalna. Zrównoważony L9(34) Poniższa tablica zachowuje te same dziewięć przebiegów, pokrywając jednocześnie wszystkie dziewięć par poziomów pomiędzy każdymi dwoma czynnikami.
| Przypadek testowy nr | Temperatura | Nacisk | Doping ilość | Szybkość osadzania |
|---|---|---|---|---|
| 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 |
Testowanie tablic ortogonalnych a testowanie parami (wszystkie pary)
Te dwa terminy są używane zamiennie w wielu zespołach, choć nie są tożsame. Oba mają na celu pokrycie par wartości, ale różnią się pod względem stopnia ograniczenia wynikowej tabeli.
| WYGLĄD | Testowanie tablic ortogonalnych | Testowanie parami (wszystkie pary) |
|---|---|---|
| Podstawowa struktura | Tablica ortogonalna, zapożyczona z projektowania eksperymentów | Tablica pokrywająca wygenerowana przez algorytm wyszukiwania |
| Zasada pokrycia | Każda para pojawia się taką samą liczbę razy | Każda para pojawia się co najmniej raz |
| Czynniki o nierównych poziomach | Wymaga tablicy o mieszanym poziomie, która może nie istnieć dla wymaganego kształtu | Obsługiwane bezpośrednio przez generator |
| Typowa liczba przebiegów | Równe lub nieznacznie wyższe ze względu na wymóg równowagi | Równe lub niższe dla tych samych danych wejściowych |
| Ograniczenia między wartościami | Trudno wyrazić wewnątrz tablicy | Obsługiwane przez większość nowoczesnych generatorów |
W praktyce zrównoważona tablica ortogonalna to bardziej przejrzysty model nauczania i bezpieczniejszy wybór, gdy czynniki mają ten sam poziom, podczas gdy tablica pokrywająca to rozwiązanie, które większość narzędzi generuje w rzeczywistych projektach z niewygodnymi, nierównymi danymi wejściowymi. Oba te rozwiązania są komplementarne. testowanie tabeli decyzyjnej oraz testowanie przejścia stanu, które skupiają się na regułach biznesowych i sekwencji, a nie na kombinacjach wartości.
Narzędzia do testowania tablic ortogonalnych
Ręczne budowanie tablicy jest praktyczne tylko w przypadku powyższych, drobnych przykładów. Powyżej czterech lub pięciu czynników, zespoły korzystają z generatora, a narzędzie decyduje za nie o liczbie przebiegów.
- PICT: generator wiersza poleceń o otwartym kodzie źródłowym MicrosoftParametry i ich wartości są zapisywane w pliku modelu w postaci zwykłego tekstu, a narzędzie drukuje zestaw kombinacji. Obsługiwane są ograniczenia i podmodele, co ma znaczenie, gdy pewne pary wartości są nieprawidłowe. Zobacz Repozytorium PICT.
- DZIEJE: Narzędzie badawcze NIST, które generuje macierze pokrywające dla pokrycia dwukierunkowego do sześciokierunkowego, a także publikuje bibliotekę wstępnie obliczonych macierzy. Jest ono dostępne na stronie Projekt testów kombinatorycznych NIST.
- Komercyjne platformy kombinatoryczne: hostowane narzędzia dodają wymaganie tracmożliwości, oczekiwane wyniki i eksport do systemu zarządzania testami, który jest odpowiedni dla większych zespołów potrzebujących śladu audytu.
- Opublikowane biblioteki tablicowe: standardowe tablice, takie jak L4, L8, L9, L16 i L18, są zestawiane w tabele i można je kopiować bezpośrednio, gdy liczba czynników i poziomów jest zgodna.
Niezależnie od tego, które narzędzie wygeneruje tabelę, wygenerowane wiersze nadal muszą zostać przekształcone w możliwe do uruchomienia przypadki z rzeczywistymi danymi i oczekiwanymi wynikami, a następnie zaplanowane jak każdy inny pakiet w ramach techniki testowania oprogramowania już używane w projekcie.
Zalety testowania tablic ortogonalnych
- Gwarantuje przetestowanie kombinacji par wszystkich wybranych zmiennych.
- Zmniejsza liczbę przypadków testowych.
- Tworzy mniej przypadków testowych, które nadal obejmują interakcję każdej pary zmiennych.
- Można obsługiwać złożoną kombinację zmiennych.
- Jest prostszy do wygenerowania i mniej podatny na błędy niż zestawy testowe tworzone ręcznie.
- Przydaje się do Testy integracyjnei równie przydatne dla testowanie konfiguracji, gdzie liczba kombinacji przeglądarek, systemów operacyjnych i urządzeń szybko rośnie.
- Poprawia produktywność dzięki skróceniu cykli testowych i skróceniu czasu testowania.
Związki oszczędnościowe podczas testy regresji, ponieważ mniejszy, zrównoważony zestaw jest na tyle tani, że można go powtarzać w każdym cyklu, natomiast wyczerpujący zestaw kombinacji jest zwykle uruchamiany raz, a następnie po cichu porzucany.
Wady testowania tablic ortogonalnych
- Wraz ze wzrostem ilości danych wejściowych rośnie złożoność projektu przypadków testowych. W rezultacie wzrasta nakład pracy i czas poświęcany na ręczną pracę, a testerzy muszą… Testowanie automatyzacji.
- Pokrycie parami nie jest pokryciem pełnym. Defekt, który pojawia się tylko wtedy, gdy trzy określone wartości występują jednocześnie, może przejść przez tablicę bez zmian.
- Czynniki o różnej liczbie poziomów nie są w stanie odwzorować się czysto na standardową tablicę, dlatego potrzebny jest generator tablicy o różnych poziomach lub tablicy pokrywającej.
- Wybór poziomów to kwestia osądu. Jeśli istotna wartość zostanie pominięta w modelu wejściowym, żadna tablica nie będzie w stanie jej odzyskać.
- Ograniczenia pomiędzy wartościami, takie jak metoda płatności obowiązująca tylko w jednym kraju, są trudne do wyrażenia i zwykle powodują powstawanie nieprawidłowych wierszy, które należy usuwać ręcznie.
Żadne z tych ograniczeń nie wyklucza tej techniki; wyznaczają one jedynie jej granice. Tablice ortogonalne redukują problem kombinacji, podczas gdy analiza ryzyka i testowanie domeny zdecyduj, które czynniki zasługują na uwzględnienie w modelu.
Błędy lub błędy podczas wykonywania OAT
- Skierowanie wysiłków testowych na niewłaściwy obszar aplikacji.
- Wybranie niewłaściwych parametrów do połączenia.
- Korzystanie z testów tablic ortogonalnych, w których zbiór wejściowy jest na tyle mały, że można przeprowadzić wyczerpujące testy.
- Ręczne przeprowadzanie testów tablic ortogonalnych na modelu na tyle dużym, że wymaga generatora.
- Poleganie wyłącznie na testowaniu tablic ortogonalnych w przypadku zastosowań wysokiego ryzyka, w których wymagany jest głębszy zasięg.
Ostatni element powoduje największe szkody w praktyce. W przypadku funkcji krytycznej dla bezpieczeństwa lub finansowej, zestaw par stanowi dolną, a nie górną granicę i jest zazwyczaj uzupełniany o przypadki celowane. testowanie systemu poziomie i z szerszym planem opisanym w rodzaje testowania oprogramowania.

