Testowanie czarnoskrzynkowe
Testowanie czarnoskrzynkowe, znane również jako test behawioralny, jest metodą testowania oprogramowania, w którym wewnętrzne struktury/ projekty/ implementacje nie są znane testerowi. Testy te mogą być funkcjonalne lub niefunkcjonalne, ale zazwyczaj są one funkcjonalne.
Sposób ten nazywa się tak dlatego, że program nie jest widoczny dla testera, jest jak czarna skrzynka, w której nic nie można zobaczyć.
Metoda ta szuka błędów w prezentowanych kategoriach:
- nieprawidłowe lub brakujące funkcje
- błędy interfejsu
- błędy w strukturach danych lub zewnętrznych bazach danych
- błędy behawioralne lub podczas wykonywania
- błędy uruchomienia i zakończenia
Testowanie czarnoskrzynkowe – przykład
Tester bez wiedzy o wewnętrznych strukturach strony www, bada strony web za pomocą przeglądarki, wprowadza dane (klika, naciska klawisze) oraz weryfikuje je na wyjściu, oczekując rezulatatu.
Testowanie czarnoskrzynkowe – stosowane poziomy
Testowanie czarnoskrzynkowe stosowane dla wszystkich poziomów oprogramowania procesu testowania:
- Testy Jednostkowe
- Testy Integracyjne
- Testy Systemowe
- Testy Akceptacyjne
Im wyższy poziom,a tym samym bardziej skomplikowany box, tym bardziej metoda black box wchodzi w użycie.
Techniki testowania czarnoskrzynkowego
Prezentujemy kilka technik, które mogą być użyte do zaprojektowania testu czarnoskrzynkowego
- Partycje równoważne
Partycje równoważne są techniką projektowania testu oprogramowania, która obejmuje dzielnie zakresu wartości wejściowych do ważnych lub nieważnych partycji oraz wybór wartości reprezentacyjnych z każdej partycji jako dane testowe. - Analiza wartości granicznych
Analiza wartości granicznych jest techniką projektowania testu oprogramowania, która polega na ustaleniu wartości wejściowych granicznych oraz wybraniu wartości, które są wewnątrz/na zewnątrz granicy danych testowych. - Wykres przyczynowo-skutkowy
Cause Effect Graphing jest techniką projektowania testu oprogramowania, która polega na identyfikacji przypadków (warunków wejściowych) i efektów (warunków wyjściowych), tworząc wykres przyczynowo-skutkowy, oraz generując odpowiednie przypadki testowe.
Testowanie czarnoskrzynkowe – zalety
-
- Testy są wykonywane z punktu widzenia użytkownika, co pomaga w ustaleniu rozbieżności ze specyfikacją.
- Tester nie musi znać języka programowania lub jak oprogramowanie zostało zaimplementowane.
- Testy mogą być prowadzone przez niezależne od developerów osoby, co pozwala na obiektywną ocenę testowanego oprogramowania.
Przypadek testowy może być zaprojektowany jak tylko specyfikacja będzie kompletna
Testowanie czarnoskrzynkowe – wady
- Tylko niewielka liczba możliwych danych wejściowych może być przetestowana, wiele ścieżek programu nie zostanie sprawdzona.
- Bez jasnych specyfikacji, co się zdarza w wielu projektach, trudno będzie zaprojektować przypadki testowe.
- Testy mogą być niepotrzebnie powtarzane, jeśli programista lub projektant przeprowadzili wcześniej dany przypadek testowy.
- Kiedykolwiek zastanawialiście się, dlaczego wróżbita zamyka oczy podczas przepowiadania zdarzeń? Więc to jest właściwie przypadek testowania metodą Black Box.
Definicja ISTQB
- Testowanie którejkolwiek funkcjonalności, bez odniesienia do wewnętrznej struktury jednostki lub systemu.
- Projektowanie testów metody czarnoskrzynkowej: procedura uzyskania lub wybrania przypadków testowych na podstawie analizy specyfikacji albo funkcjonalnego, lub niefunkcjonalnego komponentu, lub systemu bez odniesienia do jego wewnętrznej struktury.