Sobes.tech
Junior

Jakie metody testowania znasz?

sobes.tech AI

Odpowiedź od AI

  • Testy funkcjonalne:
    • Testy jednostkowe: Testowanie najmniejszych izolowanych części kodu (funkcji, klas).
    • Testy integracyjne: Sprawdzanie współdziałania różnych modułów lub komponentów systemu.
    • Testy systemowe: Testowanie całego zintegrowanego systemu pod kątem zgodności z wymaganiami.
    • Testy akceptacyjne: Testy przeprowadzane przez użytkowników końcowych lub przedstawicieli biznesu w celu potwierdzenia, że spełniają ich potrzeby.
  • Testy niefunkcjonalne:
    • Testy wydajności: Ocena wydajności systemu pod obciążeniem.
      • Testy obciążeniowe: Testowanie systemu pod oczekiwanym obciążeniem.
      • Testy przeciążeniowe: Testowanie systemu poza oczekiwanym obciążeniem w celu określenia punktu awarii.
      • Testy wytrzymałościowe (Soak): Sprawdzanie stabilności systemu podczas długotrwałej pracy pod obciążeniem.
    • Testy bezpieczeństwa: Ocena zabezpieczeń systemu przed zagrożeniami.
    • Testy użyteczności: Sprawdzanie wygody użytkowania systemu dla użytkowników końcowych.
    • Testy kompatybilności: Sprawdzanie działania systemu w różnych środowiskach (przeglądarki, systemy operacyjne, urządzenia).
    • Testy niezawodności: Ocena zdolności systemu do pracy bez awarii przez określony czas.
    • Testy utrzymania: Ocena łatwości wprowadzania zmian w systemie.
    • Testy przenośności: Ocena możliwości przeniesienia systemu do innego środowiska.
  • Testy zmian:
    • Testy regresji: Powtórne testowanie wcześniej przetestowanej funkcjonalności po wprowadzeniu zmian w celu wykrycia nowych defektów.
    • Testy ponowne (Re-testing): Powtórne testowanie konkretnego defektu po jego naprawie w celu potwierdzenia usunięcia.
  • Testy strukturalne (White-box): Testowanie wewnętrznej struktury i logiki kodu.
    • Pokrycie instrukcji: Pokrycie wszystkich instrukcji kodu.
    • Pokrycie gałęzi: Pokrycie wszystkich gałęzi logiki kodu (warunków).
    • Pokrycie ścieżek: Pokrycie wszystkich możliwych ścieżek wykonania kodu.
  • Testy czarnej skrzynki (Black-box): Testowanie funkcjonalności bez uwzględniania struktury wewnętrznej kodu.
    • Analiza wartości granicznych: Testowanie wartości granicznych danych wejściowych.
    • Podział na klasy równoważne: Podział danych wejściowych na klasy równoważne.
    • Testy tabel decyzyjnych: Użycie tabel decyzyjnych do testowania kombinacji warunków i działań.
    • Testy przejścia stanów: Testowanie przejść między różnymi stanami systemu.
    • Testy przypadków użycia: Testowanie systemu na podstawie scenariuszy użytkownika.
  • Testy eksploracyjne: Projektowanie, wykonywanie i analiza testów równocześnie.
  • Testy oparte na ryzyku: Priorytetyzacja testów na podstawie potencjalnych ryzyk.