ISTQB w pigułce
  • ISTQB w pigułce
  • AUTOR
  • PODSTAWY
    • Proces testowy
    • Testowanie a debagowanie
    • 7 zasad testowania
    • Weryfikacja i walidacja
    • Środowisko testowe a produkcyjne
    • Wymagania funkcjonalne niefunkcjonalne
  • ROLA TESTERA
    • Typy testerów
    • Tester
    • Zadania testera
      • Analiza dokumentacji
      • Tworzenie dokumentacji
      • Wykonywanie testów
      • Raportowanie incydentów
    • Nawyki skutecznego testera
    • Role w zespole testerów
    • Niezależność w testowaniu
  • PRZYPADEK TESTOWY
    • Przypadek testowy niskiego poziomu (konkretny)
    • Przypadek testowy wysokiego poziomu (logiczny)
    • Przegląd przypadku testowego
  • TYPY TESTÓW
    • Testowanie funkcjonalne
    • Testowanie niefunkcjonalne
    • Testowanie strukturalne (białoskrzynkowe)
    • Testowanie związane ze zmianami - testy regresji i retesty
    • Testowanie pielęgnacyjne
  • TECHNIKI TESTÓW
    • CZARNOSKRZYNKOWE
      • 1. Klasy równoważności
      • 2. Analiza wartości brzegowych
      • 3. Tablice decyzyjne
      • 4. Testowanie przejść między stanami
      • 5. Testowanie w oparciu o przypadki użycia
    • BIAŁOSKRZYNKOWE
      • 1. Pokrycie instrukcji
      • 2. Pokrycie decyzji
      • 3. Inne techniki oparte na strukturze
    • OPARTE NA DOŚWIADCZENIU
      • Zgadywanie błędów
      • Testowanie eksploracyjne
      • Testowanie w oparciu o listy kontrolne
  • POZIOMY TESTÓW
    • POZIOM 1. Testy modułowe (jednostkowe)
    • POZIOM 2. Testy integracyjne
    • POZIOM 3. Testy systemowe
    • POZIOM 4. Testy akceptacyjne
      • Testy Alfa, Beta
  • MODELE
    • Model wodospadowy
    • Model V – sekwencyjny.
    • Model iteracyjny / przyrostowy
  • PLANOWANIE TESTÓW
    • Kryteria wejścia - wyjścia
    • Podejścia do testów
    • Podejścia do szacowania pracochłonności testów
    • Metryki
    • Ryzyko projektowe/produktowe
    • Kierowanie testami
  • TESTY STATYCZNE
    • PRZEGLĄD
      • TYPY przeglądów
      • PODZIAŁ podstawowy
      • Przegląd formalny
      • Przegląd nieformalny
    • Analiza statyczna
    • TECHNIKI przeglądu indywidualnego
      • Listy kontrolne
  • NARZĘDZIA
    • Do zarządzania testowaniem i testami
    • Do testów statycznych
    • Do specyfikacji testów
    • Do wykonania testów oraz logowania
    • Do wydajności i monitorowania
    • Do różnych obszarów zastosowań
  • METODY WYTÓRCZE
    • METODY WYTWÓRCZE
      • Projekt - Proces - Działania rutynowe
        • Projekt
        • Dlaczego projekty upadają?
      • Etapy życia oprogramowania
      • PDCA
      • Planowanie
        • Analiza i specyfikacja wymagań
        • Planowanie projektu - metodyki KLASYCZNE
        • Planowanie projektu - metodyki ZWINNE
        • Ryzyko a niepożądane skutki
      • Narzędzia planowania - SMART - MoSCow...
        • SMART
        • Mapa myśli
        • MoSCoW
        • WSJF
        • Trójkąt celów
      • Role projektowe
        • Role projektowe – metodyki klasyczne
        • Role projektowe – SCRUM
    • AGILE - METODYKI ZWINNE
      • Manifest Agile
      • Podejście "cały zespół" i info zwrotne
      • Historyjki użytkownika
      • Planowanie wydania i iteracji
      • RETROSPEKTYWY
      • Rola i umiejętności testera w projekcie zwinnym
      • PODEJŚCIA
        • Programowanie ekstremalne (XP)
        • Test-driven development (TDD)
        • Scrum
        • Kanban
    • SCRUM
      • Szacowanie czasochłonności
    • KANBAN
  • Linki
    • e-Olak.pl
  • POLITYKA PRYWATNOŚCI
    • PRAWA AUTORSKIE
      • GitHub
Powered by GitBook
On this page
  • Zasady testowania (wg ISTQB):
  • I. Testowanie ujawnia usterki
  • II. Testowanie gruntowne jest niemożliwe
  • III. Wczesne testowanie oszczędza czas i pieniądze
  • IV. Kumulowanie się błędów
  • V. Paradoks pestycydów
  • VI. Testowanie zależne od kontekstu
  • VII. Przekonanie o braku błędów jest błędem

Was this helpful?

  1. PODSTAWY

7 zasad testowania

PreviousTestowanie a debagowanieNextWeryfikacja i walidacja

Last updated 4 years ago

Was this helpful?

Zasady testowania (wg ISTQB):

  1. Testowanie ujawnia usterki.

  2. Testowanie gruntowne jest niemożliwe.

  3. Wczesne testowanie oszczędza czas i pieniądze.

  4. Kumulowanie się błędów .

  5. Paradoks pestycydów.

  6. Testowanie zależne od kontekstu.

  7. Przekonanie o braku błędów jest błędem.

I. Testowanie ujawnia usterki

Nigdy nie można stwierdzić, że oprogramowanie jest w 100% wolne od błędów. Testowanie może pokazać, że w oprogramowaniu istnieją defekty, ale nie może dowieść, że oprogramowanie ich nie posiada. Zmniejsza prawdopodobieństwo występowania w oprogramowaniu niewykrytych defektów, ale nawet jeśli żadne nie zostały znalezione, nie stanowi to dowodu, że nie mogą wystąpić.

II. Testowanie gruntowne jest niemożliwe

Przetestowanie wszystkiego (wszystkich możliwych scenariuszy, kombinacji, warunków początkowych, ustawień itd.) najczęściej jest niemożliwe lub jest możliwe jedynie w bardzo mało skomplikowanych przypadkach. Nie należy planować przetestowania wszystkich możliwych kombinacji, ale wykorzystać analizę ryzyka i priorytetyzację.

III. Wczesne testowanie oszczędza czas i pieniądze

Najlepiej, jeśli usterki zostaną wykryte jak najwcześniej. Może to skutkować bardzo dużymi oszczędnościami, odpowiednim nakierowaniem pracy programistów, uniknięciem nakładu czasu pracy na implementację funkcji niezgodnie z wymaganiami i ostatecznie zadowoleniem klienta z oprogramowania dostarczonego terminowo i działającego zgodnie z jego oczekiwaniami. Testowanie może zostać rozpoczęte w cyklu rozwoju oprogramowania tak wcześnie, jak to tylko jest możliwe.

IV. Kumulowanie się błędów

– zasada ma odzwierciedlenie w powszechnie stosowanej tzw. „zasadzie Pareto” (zasada 80 na 20) Niewielka liczba modułów zwykle zawiera większośc defektów znalezionych przed wydaniem wersji oprogramowania lub jest odpowiedzialna za większość awarii na produkcji. Pracochłonność testowania jest dzielone proporcjonalnie do spodziewanej oraz zaobserwowanie gęstości błędów w poszczególnych modułach. Ta zasada ma odzwierciedlenie w powszechnie stosowanej tzw. "Zasadzie Pareto" (znana również jako zasada 80/20 lub 80 na 20 – zasada opisująca wiele zjawisk, zgodnie z którą 80% wyników pochodzi z 20% działań)

V. Paradoks pestycydów

Jeżeli te same testy są powtarzane bez zmian, to po pewnym czasie przestaną znajdować nowe usterki. Jeżeli używamy tych samych pestycydów, to po pewnym czasie szkodniki się na nie uodparniają i przestają na nie reagować. Aby przezwyciężyć "paradoks pestycydów", testy muszą być regularnie przeglądane i uaktualniane, uwzględniając np. nowe funkcjonalności i scenariusze, aby umożliwić odszukanie nowych usterek, które mogą wystąpić w danych obszarze oprogramowania.

VI. Testowanie zależne od kontekstu

Testowanie wykonuje się w różny sposób w różnym kontekście. Oprogramowanie i jego przeznaczenie znacząco różni się od siebie, np. podczas testowania aplikacji bankowej dużo większy nacisk należy położyć na bezpieczeństwo i zabezpieczenie wrażliwych danych, natomiast przy testowaniu strony internetowej większe znaczenie może mieć odpowiednia prezentacja treści i multimediów, bo w tym przypadku może to mieć kluczowe znaczenie dla klienta i użytkownika.

VII. Przekonanie o braku błędów jest błędem

Nawet jeśli uważamy, że oprogramowanie jest wolne od defektów (a najpewniej nie jest), nie oznacza to, że system nadaje się do użytkowania i spełnia wszystkie wymagania i oczekiwania użytkownika. Może okazać się, że oprogramowanie działa prawidłowo z perspektywy braku usterek, ale nie jest przyjazne użytkownikowi lub nie posiada funkcji pożądanych przez klienta, a więc z jego punktu widzenia jest bezużyteczne.