Omówienie testowania czarnej skrzynki

Black Box Testing to metoda testowania oprogramowania, w której tester nie zna wewnętrznej struktury, projektu lub implementacji przedmiotu, który ma zostać przetestowany.

Co to jest testowanie oprogramowania?

Testowanie oprogramowania to procedura oceny systemu z zamiarem znalezienia błędów. Przeprowadzane jest w celu sprawdzenia, czy system spełnia określone wymagania. Testy mierzą ogólną jakość systemu pod względem jego poprawności, kompletności, użyteczności, wydajności oraz innych funkcjonalnych i niefunkcjonalnych atrybutów.

Testowanie czarnej skrzynki to technika testowania oprogramowania, która koncentruje się na analizie funkcjonalności oprogramowania w porównaniu z mechanizmami wewnętrznymi systemu. Testowanie czarnej skrzynki zostało opracowane jako metoda analizy wymagań klienta, specyfikacji i strategii projektowania na wysokim poziomie. Tester oprogramowania czarnej skrzynki wybrałby prawidłowy i nieprawidłowy zestaw danych wejściowych oraz warunki wykonania kodu i sprawdzał poprawność odpowiedzi wyjściowych. Testowanie czarnej skrzynki jest również nazywane testowaniem funkcjonalnym lub testowaniem zamkniętej skrzynki.

Na przykład wyszukiwarka aplikacji. W wyszukiwarce użytkownik wpisuje tekst w pasku wyszukiwania przeglądarki. Wyszukiwarka następnie zlokalizuje i pobierze dane wyjściowe powiązanych użytkowników. To, co dzieje się za sceną, nie jest znane użytkownikowi. Zatem wewnętrzne wdrożenie go nie rozumie.

Zalety testowania czarnej skrzynki obejmują:

  • Prostota: Ułatwia testowanie projektów wysokiego poziomu i złożonych aplikacji
  • Oszczędza zasoby: testerzy koncentrują się na funkcjonalności oprogramowania.
  • Przypadki testowe: skupienie się na funkcjonalności oprogramowania w celu ułatwienia szybkiego opracowania przypadków testowych.
  • Zapewnia elastyczność: Specjalna znajomość programowania nie jest wymagana.

Przykład

Tester przetestowałby strony internetowe, to znaczy poprzez kliknięcia i naciśnięcia klawiszy przy użyciu przeglądarki, wprowadzając dane wejściowe i bez znajomości wewnętrznych struktur, sprawdzając w ten sposób wyniki pod kątem oczekiwanych wyników.

Narzędzia używane do testowania czarnej skrzynki

Narzędzia do testowania czarnej skrzynki w zasadzie zależą od tego, jaki rodzaj testowania czarnej skrzynki wdrażasz.

  • Testy funkcjonalne / regresyjne można wykonać za pomocą QTP lub Selenium
  • Testy niefunkcjonalne można wykonać za pomocą LoadRunner lub Jmeter.

Poziomy

W testach Black Box następujące poziomy testowania oprogramowania:

  • Testy integracyjne
  • Testowanie systemu
  • Testy akceptacyjne

Gdy poziom jest wyższy, pudełko będzie większe i bardziej złożone, a na obrazie pojawi się również więcej testów czarnej skrzynki.

Definicja testowania czarnej skrzynki

Testowanie czarnej skrzynki można zdefiniować jako technikę testowania, w której testowana jest funkcjonalność aplikacji w trakcie testowania (AUT), ale z pominięciem struktury wewnętrznego kodu, szczegółów implementacji i wszelkiej wiedzy na temat wewnętrznych ścieżek oprogramowania.

Zrozumienie testowania czarnej skrzynki

Testowanie czarnej skrzynki dotyczy wszystkich specyfikacji oprogramowania i wymagań. Testowanie czarnej skrzynki skupia się tylko na danych wejściowych i wyjściowych systemu oprogramowania i nie zawraca sobie głowy wewnętrzną wiedzą o oprogramowaniu.

W jaki sposób testowanie czarnej skrzynki ułatwia pracę?

Istnieje Cykl życia testowania oprogramowania, czyli STLC, który polega na testowaniu czarnej skrzynki, który odnosi się do każdego etapu cyklu życia oprogramowania.

  1. W początkowym lub pierwszym etapie STLC zbierane są wymagania dotyczące produktu. Jest to znane jako faza gromadzenia wymagań.
  2. Następująca faza to faza planowania i analizy testów. Rezultatem tej fazy są na ogół rodzaje testów, które należy wykonać zgodnie z projektem, oraz plan testów w celu określenia ryzyka i ograniczenia tego ryzyka.
  3. Trzecia faza to faza projektowania, w której przypadki testowe, skrypty testowe są przygotowywane za pomocą dokumentów wymagań oprogramowania lub dokumentu wymagań biznesowych.
  4. Ostatni etap jest znany jako faza wykonywania testu. Jak sama nazwa wskazuje, na tym etapie wykonywane są wszystkie przypadki testowe lub skrypty. Wszystkie znalezione błędy są zgłaszane, naprawiane i ponownie testowane.

Co możesz zrobić z testowaniem Black Box?

Niektóre z najważniejszych strategii testowania stosowanych w testach czarnej skrzynki są wyjaśnione poniżej:

  • Testy klasy równoważności
  • Testowanie wartości granicznych
  • Testowanie tabeli decyzyjnej
  • Testowanie przyczynowo-skutkowe
  • Testowanie oparte na wymaganiach
  • Testowanie kompatybilności

Testy klasy równoważności

Ten rodzaj testowania jest preferowany, ponieważ pomaga zminimalizować przypadki testowe do poziomu, na którym szanse na pokrycie zapotrzebowania są na optymalnym poziomie.

Odbywa się to w dwóch następujących krokach:

1. Identyfikacja i podział na klasy równoważności: Najpierw dane wejściowe są dzielone na minimum dwa zestawy - pierwszy zestaw zawiera listę prawidłowych wartości wejściowych, a drugi zestaw zawiera listę nieprawidłowych wartości wejściowych. Na przykład, jeśli istnieje pole wiekowe, które może zawierać wiek w zakresie 20-40, wówczas prawidłowe wartości wejściowe mogą wynosić 21, 25, 30, 39 itd., A nieprawidłowe wartości wejściowe mogą mieć dowolną wartość mniejszą niż 20 lub większą niż 40 jak 10, 15, 45, 55 itd.

2. Tworzenie przypadków testowych - Niepowtarzalny numer identyfikacyjny jest przypisywany do każdej prawidłowej klasy wejściowej i niepoprawnej klasy wejściowej, a następnie zapisywane są przypadki testowe z zamiarem objęcia dwóch zestawów klas wejściowych.

Testowanie wartości granicznych

Testowanie wartości granicznych zasadniczo koncentruje się na wartościach granicznych. Ocenia, czy określony zakres wartości byłby akceptowany przez system, czy nie. Testowanie wartości granicznej jest przydatne w zmniejszaniu / minimalizowaniu liczby przypadków testowych. Testowanie wartości granicznej jest najbardziej odpowiednie dla systemów, w których dane wejściowe mieszczą się w określonych zakresach.

Testowanie tabeli decyzyjnej

Tabela decyzyjna pokazuje przyczyny i ich jednoczesne skutki w postaci macierzy. W testach tabeli decyzyjnej istnieje unikalna kombinacja w każdej kolumnie.

Grafowanie przyczynowo-skutkowe

Grafowanie przyczynowo-skutkowe rozwija związek między przyczynami (dane logiczne) z odpowiednim efektem (Działania). Są one reprezentowane za pomocą grafów logicznych. Kroki, które należy wykonać, są następujące:

  1. Identyfikacja wejść i wyjść.
  2. Opracowanie wykresu przyczynowo-skutkowego.
  3. Przekształcenie wykresu w tabelę decyzyjną.
  4. Konwersja reguł tabeli decyzyjnej na przypadki testowe.

Testowanie oparte na wymaganiach

Ten rodzaj testowania obejmuje sprawdzenie, czy wymagania wymienione w SRS lub specyfikacji wymagań oprogramowania są ważne, czy nie.

Testowanie zgodności

Aby zapewnić funkcjonalność, zarówno produkty, jak i infrastruktura zależą od wyniku wykonania przypadku testowego. Niezależnie od zmian dokonanych w parametrach infrastruktury oczekuje się, że produkt będzie działał poprawnie. Niektóre parametry ogólnie wpływające na kompatybilność oprogramowania są wymienione poniżej:

  1. Procesory Pentium 3 lub Pentium 4 i liczba używanych procesorów
  2. Architektura 32-bitowa lub 64-bitowa
  3. Serwery baz danych lub inne komponenty zaplecza
  4. Rodzaj systemu operacyjnego (Windows, Linux itp.)

Praca z testami Black Box

Poniżej znajdują się podstawowe kroki niezbędne do przeprowadzenia testu czarnej skrzynki.

  • Po pierwsze, omówiono specyfikacje i wymagania systemu.
  • Po drugie, tester wybiera logiczne dane wejściowe, czyli pozytywne scenariusze testowe, aby sprawdzić, czy SUT przetworzył je poprawnie, czy nie. Ponadto wybiera się również nieprawidłowe dane wejściowe, czyli scenariusz testu negatywnego, aby sprawdzić, czy SUT może je wykryć.
  • Po trzecie, testerzy określą oczekiwane wyniki dla wszystkich prawidłowych danych wejściowych.
  • Po czwarte, tester oprogramowania tworzy przypadki testowe z wybranymi i prawidłowymi danymi wejściowymi.
  • Po piąte, utworzone przypadki testowe są wykonywane.
  • Po szóste, testerzy oprogramowania rozróżniają rzeczywiste wyjścia z oczekiwanymi wyjściami i sprawdzają, czy są takie same.
  • Na koniec, jeśli zostaną znalezione, zostaną naprawione i ponownie przetestowane.

Zalety

  • Testy czarnej skrzynki są zawsze wykonywane z punktu widzenia użytkownika, ponieważ pomogłoby to znacznie ujawnić rozbieżności.
  • Testerzy czarnej skrzynki również nie muszą znać żadnych języków programowania.
  • Testerzy czarnej skrzynki nie muszą wiedzieć, w jaki sposób oprogramowanie zostało wdrożone.
  • Przypadki testowe związane z czarną skrzynką są projektowane przez testerów, gdy tylko specyfikacje są na ukończonym etapie.

Niedogodności

  • Ponieważ wiedza techniczna ani programistyczna nie jest potrzebna, mogą zaistnieć przypadki zignorowania wszystkich ważnych i możliwych warunków scenariusza, który należy przetestować.
  • Istnieją możliwości mniejszego testowania i ignorowania każdego możliwego wkładu i jego testowania wyjściowego ze względu na ograniczenia czasowe (określony czas).
  • Kompletny i zakończony test Pokrycie często nie jest możliwe w przypadku złożonych i dużych projektów.

Dlaczego powinniśmy korzystać z testowania czarnej skrzynki?

Narzędzia do testowania czarnej skrzynki są w zasadzie narzędziami do nagrywania i odtwarzania. Narzędzia te rejestrują przypadki testowe w postaci skryptów, takich jak TSL, JavaScript, skrypt VB itp. Wszystkie te narzędzia są w zasadzie używane do testowania regresji w celu sprawdzenia, czy nowa kompilacja spowodowała jakąkolwiek wadę w już działającej funkcjonalności aplikacji .

Zakres

Najważniejsze i najważniejsze rodzaje testów czarnej skrzynki to:

  • Testy funkcjonalne: Ten rodzaj testów czarnej skrzynki dotyczy wymagań funkcjonalnych systemu i jest wykonywany przez testerów oprogramowania.
  • Testy niefunkcjonalne: Ten rodzaj testów czarnej skrzynki nie dotyczy testowania konkretnej funkcjonalności, ale wszystkie dotyczące niefunkcjonalnych wymagań, takich jak wydajność, użyteczność, skalowalność i wiele innych.
  • Testowanie regresji: Testowanie regresji jest wykonywane po naprawieniu kodu, wszelkich aktualizacjach kodu lub jakiejkolwiek innej konserwacji systemu w celu sprawdzenia, czy nowy kod nie wpłynął na istniejącą funkcjonalność.

Różnice

Black Box Testing to technika testowania oprogramowania, w której wewnętrzna struktura, projekt lub implementacja testowanego produktu jest nieznana testerowi.

White Box Testing to technika testowania oprogramowania, w której wewnętrzna struktura lub projekt lub implementacja testowanego produktu jest znana testerowi.

Testowanie czarnej skrzynki Testowanie białych skrzynek
Testowanie czarnej skrzynki polega na tym, że wewnętrzna struktura, program lub kod są nieznane.Testowanie w białej skrzynce polega na tym, że tester ma wiedzę na temat wewnętrznej struktury oprogramowania
Zwykle robią to testerzy oprogramowania.Zwykle robią to programiści oprogramowania.
Tutaj absolutnie nie jest wymagana znajomość implementacji.Tutaj wymagana jest znajomość implementacji.
Można to również nazwać testowaniem oprogramowania zewnętrznego / zewnętrznego.Może być również nazywany wewnętrznym / wewnętrznym testowaniem oprogramowania.
Testowanie czarnej skrzynki jest testem funkcjonalnym oprogramowania.Testowanie białych skrzynek jest testem strukturalnym oprogramowania.
Testowanie można rozpocząć na podstawie dokumentu specyfikacji wymagań.Ten rodzaj testowania oprogramowania rozpoczyna się po szczegółowym dokumencie projektowym.
Tutaj nie jest wymagana znajomość języka programowania.Tutaj obowiązkowa jest znajomość co najmniej jednego języka programowania.
Jest to w zasadzie testowanie zachowania oprogramowania.Jest to podstawowe testowanie logiczne oprogramowania.
Dotyczy to głównie wyższych poziomów testowania.Dotyczy to głównie niższych poziomów testowania.
Nazywa się to również testowaniem behawioralnym.Nazywa się to również testowaniem przezroczystym lub szklanym.
Testowanie czarnej skrzynki jest mniej czasochłonne niż testowanie białej skrzynki.Testowanie białych skrzynek jest bardziej czasochłonne niż testowanie czarnych skrzynek.
Testowanie czarnej skrzynki nie jest odpowiednie do testowania algorytmu.Testowanie białych skrzynek jest odpowiednie do testowania algorytmów.
Można tego dokonać metodami prób i błędów.Wewnętrzne lub wewnętrzne granice danych wraz z ich domeną można dokładnie przetestować.
Na przykład: Wyszukiwanie w Google za pomocą słów kluczowychNa przykład: Używanie danych wejściowych do sprawdzania i weryfikowania pętli.
Rodzaje

  1. Testy funkcjonalności
  2. Testy niefunkcjonalne
  3. Testy regresji
Rodzaje

  1. Testowanie ścieżki
  2. Testowanie pętli
  3. Testowanie warunków

Wniosek:

Wszystkie omawiane tematy są zarówno podstawowe, jak i zaawansowane tematy związane z testowaniem czarnej skrzynki i istotą wszystkich jej technik i metod.

Ponieważ nie jest możliwe przetestowanie każdego z nich wraz z zaangażowaniem człowieka, a także ze 100-procentową dokładnością, ale jeśli zastosowane już metody zostaną zastosowane bardzo skutecznie, bez wątpienia poprawi to jakość systemu. Dlatego też, aby zakończyć, testowanie czarnej skrzynki jest naprawdę bardzo skuteczną metodą identyfikacji wad, a także weryfikacji funkcjonalności systemu.

Polecane artykuły

To był przewodnik po testach Black Box. Tutaj omawialiśmy, w jaki sposób wykonuje się testowanie czarnej skrzynki za pomocą przykładów i różnych technik testowania czarnej skrzynki za pomocą narzędzi. Możesz także przejrzeć nasze inne sugerowane artykuły, aby dowiedzieć się więcej -

  1. Testowanie białych skrzynek
  2. Testowanie pytań do wywiadu
  3. Co to jest Hypervisor
  4. Pytania do wywiadu podczas testowania gry