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 bechawioralne lub podczas wykonywania
- błędy uruchomienia i zakończenia
Testowanie czarnoskrzynkowe – przykład
Tester bez wiedzy o wewnętrznych strukturach strony www, bada storny 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 nie waż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/nazweną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ściwych), 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 rozbierzności ze specyfikacją.
- Tester nie musi znać języka programowania lub jak oprogramowanie zostało zaimplementowane.
- Testy mogą być prowadzone przes niezależne od developerów osoby, co pozwala na obiektywną ocene testowanego orpogramowania.
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ędzię zaprojektować przypaki testowe.
- Testy mogą być niepotrzebnie powtarzane jeśli programista lub projektant przeprowadzili wcześniej dany przypadek testowy.
- Kiedykolwiek zastanawialiście się, dlaczego wróżnita zamyka oczy podczas przepowiadania zdarzeń? Więc to jest właściewie przypadek testowania metodą Black Box.
Testowanie czarnoskrzynkowe – określona przez ISTQB
- Testowanie czarnoskrzynkowe: testowanie którejkolwiek funkcjonalności, bez odniesienia do wewnętrznej struktury jednostki lub systemu.
- Projektowanie testów metody czarnoskrzynkowej: procedura usyzkania lub wybrania przypadków testowych w oparciu o analize specyfikacji, albo funkcjonalnego lub niefunkcjonalnego komponentu lub systemu bez odniesienia do jego wewnętrznej struktury.