Sobes.tech
Junior

Czym jest technika analizy klasów równoważności i jak jest stosowana w testowaniu oprogramowania?

sobes.tech AI

Odpowiedź od AI

Technika analizy klas równoważności (Partitioning równoważności) jest metodą projektowania przypadków testowych opartą na podziale danych wejściowych (lub warunków wyjściowych) na klasy, których reprezentatywy będą przetwarzane przez program w podobny sposób. Uważa się, że wystarczy przetestować jednego reprezentanta z każdej klasy, aby pokryć całą klasę.

Główny pomysł: Jeśli test na jednym reprezentancie klasy wykryje błąd, to prawdopodobnie test na innym reprezentancie tej samej klasy również wykryje błąd. Jeśli test na jednym reprezentancie nie wykryje błędu, to prawdopodobnie test na innym reprezentancie tej samej klasy również nie wykryje błędu.

Zastosowanie:

  1. Identyfikacja klas równoważności:
    • Określa się dozwolone i niedozwolone klasy dla każdego pola wejściowego (zakres liczbowy, zestaw łańcuchów, wartości logiczne itp.).
    • Dla zakresów liczbowych:
      • Dozwolony zakres.
      • Liczby mniejsze od dolnej granicy (klasa niedozwolona).
      • Liczby większe od górnej granicy (klasa niedozwolona).
    • Dla zestawów wartości:
      • Dozwolone wartości.
      • Niedozwolone wartości (np. łańcuchy w polu numerycznym).
    • Na przykład, dla pola "Wiek" od 18 do 65 lat:
      • Klasa dozwolona: 18-65 (np. 25, 40, 60)
      • Klasa niedozwolona: < 18 (np. 17, 0)
      • Klasa niedozwolona: > 65 (np. 66, 100)
  2. Tworzenie przypadków testowych:
    • Wybiera się jednego reprezentanta z każdej zidentyfikowanej klasy (dozwolonej i niedozwolonej).
    • Tworzy się przypadki testowe z wybranymi reprezentantami jako dane wejściowe.

Przykład:

Formularz zamówienia, pole "Ilość produktu", dozwolone wartości od 1 do 99.

Klasa równoważności Typ Reprezentanci do testowania
Mniej niż 1 Niedozwolone 0, -5
Od 1 do 99 Dozwolone 1, 50, 99
Więcej niż 99 Niedozwolone 100, 1000
Nieliczbowe wartości Niedozwolone "abc", " "

Z każdej klasy wybiera się co najmniej jednego reprezentanta do stworzenia przypadku testowego. Na przykład, dla tego pola będzie co najmniej 4-6 przypadków testowych pokrywających wszystkie zidentyfikowane klasy.

Zalety:

  • Zmniejsza nadmiarowość przypadków testowych.
  • Pomaga systematyzować proces testowania.
  • Zapewnia dobrą pokrycie testami przy mniejszej liczbie przypadków w porównaniu do testowania każdej możliwej wartości wejściowej.

Wady:

  • Może nie wykryć błędów na wartościach granicznych (często używane w połączeniu z analizą wartości granicznych).
  • Skuteczność zależy od poprawnej identyfikacji klas równoważności.