Co to jest test szarej skrzynki? Techniki, przykład

Spisie treści:

Anonim

Testowanie szarej skrzynki

Testowanie szarej skrzynki lub testowanie szarej skrzynki to technika testowania oprogramowania służąca do testowania oprogramowania lub aplikacji z częściową znajomością wewnętrznej struktury aplikacji. Celem testów szarej skrzynki jest wyszukiwanie i identyfikacja defektów wynikających z niewłaściwej struktury kodu lub niewłaściwego użycia aplikacji.

W tym procesie często identyfikuje się błędy specyficzne dla kontekstu, które są związane z systemami sieciowymi. Zwiększa zakres testów, koncentrując się na wszystkich warstwach dowolnego złożonego systemu.

Testowanie szarych skrzynek to metoda testowania oprogramowania, będąca połączeniem zarówno testu białoskrzynkowego, jak i testu czarnoskrzynkowego.

  • W testach White Box znana jest struktura wewnętrzna (kod)
  • W testach Black Box struktura wewnętrzna (kod) jest nieznana
  • W Gray Box Testing struktura wewnętrzna (kod) jest częściowo znana

W inżynierii oprogramowania, Gray Box Testing daje możliwość testowania obu stron aplikacji, warstwy prezentacji, a także części kodu. Jest to przydatne przede wszystkim w testach integracyjnych i testach penetracyjnych.

Przykład testowania w szarej skrzynce: Podczas testowania funkcji stron internetowych, takich jak linki lub linki osierocone, jeśli tester napotka jakiś problem z tymi linkami, może od razu wprowadzić zmiany w kodzie HTML i sprawdzić w czasie rzeczywistym.

Dlaczego testy Gray Boxa

Testowanie szarych skrzynek jest wykonywane z następującego powodu:

  • Zapewnia połączone korzyści zarówno z testów czarnoskrzynkowych, jak i białoskrzynkowych
  • Łączy w sobie wkład programistów oraz testerów i poprawia ogólną jakość produktu
  • Zmniejsza narzut związany z długim procesem testowania typów funkcjonalnych i niefunkcjonalnych
  • Daje programiście wystarczająco dużo czasu na naprawienie usterek
  • Testowanie odbywa się z punktu widzenia użytkownika, a nie z punktu widzenia projektanta

Strategia testowania szarej skrzynki

Aby przeprowadzić testy Gray box, nie jest konieczne, aby tester miał dostęp do kodu źródłowego. Test jest projektowany w oparciu o znajomość algorytmu, architektur, stanów wewnętrznych lub innych wysokopoziomowych opisów zachowania programu.

Aby wykonać test Gray box:

  • Stosuje prostą technikę testowania czarnoskrzynkowego
  • Opiera się na generowaniu przypadków testowych wymagań, jako takie, ustawia wszystkie warunki, zanim program zostanie przetestowany metodą asercji.
Techniki stosowane w testach Grey Box to:
  • Testowanie macierzy: Ta technika testowania obejmuje definiowanie wszystkich zmiennych, które istnieją w ich programach.
  • Testowanie regresyjne : Aby sprawdzić, czy zmiana w poprzedniej wersji spowodowała regresję innych aspektów programu w nowej wersji. Zostanie to zrobione poprzez testowanie strategii, takich jak ponowne przetestowanie wszystkich, ponowne przetestowanie ryzykownych przypadków użycia, ponowne przetestowanie w zaporze.
  • Ortogonal Array Testing lub OAT : zapewnia maksymalne pokrycie kodu przy minimalnej liczbie przypadków testowych.
  • Testowanie wzorców: To testowanie jest przeprowadzane na danych historycznych poprzednich defektów systemu. W przeciwieństwie do testów czarnoskrzynkowych, testowanie szarej skrzynki zagłębia się w kodzie i określa przyczynę niepowodzenia

Zwykle metodologia Grey box wykorzystuje zautomatyzowane narzędzia do testowania oprogramowania do przeprowadzania testów. Stuby i sterowniki modułów są tworzone w celu zwolnienia testera z ręcznego generowania kodu.

Kroki do wykonania testu szarej skrzynki są następujące:
  • Krok 1 : Zidentyfikuj dane wejściowe
  • Krok 2 : Zidentyfikuj wyjścia
  • Krok 3 : Zidentyfikuj główne ścieżki
  • Krok 4 : Zidentyfikuj podfunkcje
  • Krok 5 : Opracuj dane wejściowe dla podfunkcji
  • Krok 6 : Opracuj wyniki dla podfunkcji
  • Krok 7 : Uruchom przypadek testowy dla funkcji podrzędnych
  • Krok 8 : Sprawdź poprawność wyniku dla funkcji podrzędnych
  • Krok 9 : Powtórz kroki 4 i 8 dla innych funkcji podrzędnych
  • Krok 10 : Powtórz kroki 7 i 8 dla innych funkcji podrzędnych

Przypadki testowe do testów szarych skrzynek mogą obejmować: związane z GUI, związane z bezpieczeństwem, związane z bazą danych, związane z przeglądarką, związane z systemem operacyjnym itp.

Wyzwania testowania szarej skrzynki

  • Kiedy testowany komponent napotka jakąś awarię, może to doprowadzić do przerwania bieżącej pracy
  • Gdy test jest wykonywany w całości, ale treść wyniku jest nieprawidłowa.

Podsumowanie:

  • Całkowity koszt defektów systemu można zmniejszyć i zapobiec dalszemu przejściu przez testy Gray box
  • Testowanie szarych skrzynek jest bardziej odpowiednie dla GUI, testów funkcjonalnych, oceny bezpieczeństwa, aplikacji internetowych, usług internetowych itp.
  • Techniki stosowane w testach Gray box
    • Testowanie macierzy
    • Testowanie regresji
    • Testowanie OAT lub ortogonalne tablice
    • Testowanie wzorców