Co to jest testowanie domeny?
Testowanie domeny to proces testowania oprogramowania, w którym aplikacja jest testowana poprzez podanie minimalnej liczby danych wejściowych i ocenę odpowiednich wyników. Podstawowym celem testowania domeny jest sprawdzenie, czy aplikacja akceptuje dane wejściowe w dopuszczalnym zakresie i dostarcza wymagane dane wyjściowe.
Jest to technika testowania funkcjonalnego, w której wyjście systemu jest testowane przy minimalnej liczbie wejść, aby upewnić się, że system nie akceptuje nieprawidłowych i spoza zakresu wartości wejściowych. Jest to jedna z najważniejszych metod testowania White Box. Sprawdza również, czy system nie powinien akceptować danych wejściowych, warunków i indeksów spoza określonego lub obowiązującego zakresu.
Testowanie domeny różni się dla każdej określonej domeny, więc aby przetestować system oprogramowania, musisz mieć wiedzę na temat domeny.
W tym samouczku nauczysz się:
- Prostsza praktyka testowania domen
- Strategia testowania domeny
- Przykład testowania domeny
- Struktura testowania domeny
Prostsza praktyka testowania domen
W testowaniu domeny dzielimy domenę na subdomeny (klasy równoważności), a następnie testujemy przy użyciu wartości z każdej subdomeny. Na przykład, jeśli witryna (domena) została oddana do testowania, podzielimy ją na małe części (subdomenę), aby ułatwić testowanie.
Dziedzina może obejmować testowanie dowolnej zmiennej wejściowej lub kombinacji zmiennych wejściowych.
Praktycy często badają najprostsze przypadki testowania domeny mniej niż dwóch innych nazw, „testowanie granic” i „analiza klas równoważności”.
Testowanie graniczne - Analiza wartości granicznych (BVA) opiera się na testowaniu na granicach między partycjami. Będziemy testować zarówno prawidłowe, jak i nieprawidłowe wartości wejściowe w partycji / klasach.
Testowanie klas równoważności - Ideą tej techniki jest podzielenie (tj. Podzielenie) zestawu warunków testowych na grupy lub zbiory, które można uznać za takie same (tj. System powinien obsługiwać je równoważnie), stąd „podział równoważności”.
Ta uproszczona forma dotyczy testowania domeny -
- Tylko do testów zmiennych wejściowych
- Tylko podczas testowania na poziomie systemu
- Tylko podczas testowania pojedynczo
- Tylko przy bardzo powierzchownym testowaniu
Można to uprościć jak poniżej:
Zmienna | Obowiązująca klasa równoważności klas | Nieprawidłowa klasa równoważności klas | Granice i przypadki specjalne | Uwagi |
---|---|---|---|---|
X | 0-100 | 0 | ||
100 | ||||
<0 | -1 | |||
> 100 | 101 |
Wyjaśnienie:
- Jeśli pole akceptuje zakresy od 0 do 100, nie powinno akceptować wartości -1 i 101, ponieważ są to nieprawidłowe wpisy i wykraczają poza granice.
- Pole powinno przyjmować wartości takie jak 0,100 i dowolną liczbę między nimi.
Tworzenie takich tabel (w praktyce)
- Aby zbudować analizę klas równoważności w czasie, umieść informacje w arkuszu kalkulacyjnym. Zacznij od wypisania zmiennych. Dodawaj informacje o nich w miarę ich uzyskiwania.
- Tabela powinna ostatecznie zawierać wszystkie zmienne. Oznacza to wszystkie zmienne wejściowe, wszystkie zmienne wyjściowe i wszelkie zmienne pośrednie, które możesz obserwować.
- W praktyce większość tabel, które widziałem, jest niekompletna. Najlepsze z nich zawierają listę wszystkich zmiennych i dodają szczegóły dotyczące zmiennych krytycznych.
Strategia testowania domeny
Podczas testowania domeny należy wziąć pod uwagę następujące kwestie,
- Jaką domenę testujemy?
- Jak pogrupować wartości w klasy?
- Jakie wartości klas mają być testowane?
- Jak określić wynik?
Jaką domenę testujemy?
Każda testowana przez nas domena ma pewne funkcje wejściowe i wyjściowe. Będzie trzeba wprowadzić pewne zmienne wejściowe i zweryfikować odpowiednie dane wyjściowe.
Przykład testowania domeny
- Rozważ jeden scenariusz testu wejściowego:
C = a + b, gdzie a i b to zmienne wejściowe, a C to zmienna wyjściowa.
W powyższym przykładzie nie ma potrzeby klasyfikacji ani łączenia zmiennych.
- Rozważ poniżej wiele danych wejściowych i odpowiedni scenariusz wyjściowy:
Rozważ wystawę gier dla dzieci, przygotowanych jest 6 konkursów, a bilety muszą być podane w zależności od wieku i płci. Bilet jest jednym z modułów do przetestowania pod kątem całej funkcjonalności wystawy gier.
Zgodnie ze scenariuszem mamy sześć scenariuszy na podstawie wieku i zawodów:
- Wiek> 5 i <10 lat, chłopiec powinien brać udział w opowiadaniu historii.
- Wiek> 5 i <10 lat, dziewczynka powinna wziąć udział w Konkursie Rysunku.
- Wiek> 10 i <15 lat, chłopiec powinien wziąć udział w quizie.
- Wiek> 10 i <15 lat, dziewczyna powinna uczestniczyć w pisaniu eseju.
- W wieku <5 lat zarówno chłopcy, jak i dziewczęta powinni wziąć udział w Konkursie Rymowanek.
- W wieku> 15 lat zarówno chłopcy, jak i dziewczynki powinni wziąć udział w konkursie poetyckim.
Tutaj dane wejściowe będą dotyczyły wieku i płci, a tym samym zostanie wystawiony bilet na zawody. W tym przypadku pojawia się podział danych wejściowych lub po prostu grupowanie wartości.
Jak pogrupować wartości w klasy?
Podział niektórych wartości oznacza podzielenie ich na nienakładające się podzbiory.
Jak omówiliśmy wcześniej, istnieją dwa typy partycjonowania:
- Partycjonowanie równoważności - Partycjonowanie równoważności to technika testowania oprogramowania , która dzieli dane wejściowe jednostki oprogramowania na partycje równoważnych danych, z których można wyprowadzić przypadki testowe. Zasadniczo przypadki testowe są zaprojektowane tak, aby przynajmniej raz pokryć każdą partycję.
- Analiza wartości granicznych - Analiza wartości granicznych to technika testowania oprogramowania , w której testy są zaprojektowane tak, aby obejmowały przedstawicieli wartości granicznych w zakresie. Pomysł pochodzi z granicy .
W powyższym przykładzie dzielimy wartości na podzbiór lub podzbiór. Wiek dzielimy na poniższe klasy:
- Klasa 1: Dzieci w wieku od 5 do 10 lat
- Klasa 2: Dzieci w grupie wiekowej poniżej 5 lat
- Klasa 3: Dzieci w wieku od 10 do 15 lat
- Klasa 4: Dzieci w wieku powyżej 15 lat.
Jakie wartości klas mają być testowane?
Wartości wybrane do testowania powinny być wartościami granicznymi:
- Granice reprezentują klasy równoważności, z których je próbujemy. Jest bardziej prawdopodobne, że ujawnią błąd niż inni członkowie klasy, więc są lepszymi przedstawicielami.
- Najlepszym reprezentantem klasy równoważności jest wartość znajdująca się w przedziale.
W powyższym przykładzie mamy do przetestowania następujące klasy:
Na przykład dla scenariusza nr 1:
- Klasa 1: Dzieci w grupie wiekowej od 5 do 10 lat (wiek> 5 i <= 10)
Wartości graniczne:
- Wartości powinny być równe lub mniejsze niż 10. Dlatego w tej klasie należy uwzględnić wiek 10 lat.
- Wartości powinny być większe niż 5. Dlatego też wiek 5 nie powinien być zaliczany do tej klasy.
- Wartości powinny być równe lub mniejsze niż 10. Dlatego wiek 11 lat nie powinien być zaliczany do tej klasy.
- Wartości powinny być większe niż 5. Dlatego w tej klasie należy uwzględnić wiek 6 lat.
Wartości podziału równoważności:
O podziale równoważności mówi się, gdy trzeba przetestować tylko jeden warunek z każdej partycji. W tym przypadku zakładamy, że jeśli jeden warunek w partycji działa, to wszystkie warunki powinny działać. W ten sam sposób, jeśli jeden warunek w tej partycji nie działa, zakładamy, że żaden z pozostałych warunków nie zadziała. Na przykład,
(Wiek> 5 i <= 10)
Ponieważ wartości od 6 do 10 są prawidłowe, należy wybrać jedną z wartości spośród 6,7,8,9 i 10. Dlatego wybrany wiek „8” jest prawidłowym wiekiem wejściowym dla grupy wiekowej od (wiek> 5 do <= 10). Ten rodzaj podziału nazywany jest partycją równoważności.
Scenariusz | Wartości graniczne, jakie należy przyjąć | Wartości podziału równoważności |
---|---|---|
Chłopiec - wiek> 5 i <= 10 | Wiek wejściowy = 6 Wiek wejściowy = 5 Wiek wejściowy = 11 Wiek wejściowy = 10 | Wiek wejściowy = 8 |
Dziewczynka - wiek> 5 i <= 10 | Wiek wejściowy = 6 Wiek wejściowy = 5 Wiek wejściowy = 11 Wiek wejściowy = 10 | Wiek wejściowy = 8 |
Chłopiec - wiek> 10 i <= 15 | Wiek wejściowy = 11 Wiek wejściowy = 10 Wiek wejściowy = 15 Wiek wejściowy = 16 lat | Wiek wejściowy = 13 lat |
Dziewczynka - wiek> 10 i <= 15 | Wiek wejściowy = 11 Wiek wejściowy = 10 Wiek wejściowy = 15 Wiek wejściowy = 16 lat | Wiek wejściowy = 13 lat |
Wiek <= 5 | Wiek wejściowy = 4 Wiek wejściowy = 5 | Wiek wejściowy = 3 |
Wiek> 15 lat | Wiek wejściowy = 15 Wiek wejściowy = 16 lat | Wiek wejściowy = 25 |
W jaki sposób ustalamy, czy program przeszedł, czy nie przeszedł testu?
Przekazanie funkcjonalności zależy nie tylko od wyników powyższych scenariuszy. Podane dane wejściowe i oczekiwane wyniki dadzą nam wyniki, a to wymaga wiedzy dziedzinowej.
Ustalenie wyników przykładu:
Stąd, jeśli wszystkie przypadki testowe powyższego przechodzą, domena wystawiania biletów w konkursie zostanie zaliczona. Jeśli nie, domena nie powiedzie się.
Struktura testowania domeny
Zazwyczaj testerzy wykonują poniższe kroki podczas testowania domeny. Można je dostosować / pominąć zgodnie z naszymi potrzebami testowymi.
- Zidentyfikuj potencjalnie interesujące zmienne.
- Zidentyfikuj zmienne, które możesz teraz przeanalizować, i zamów je (od najmniejszej do największej i odwrotnie).
- Utwórz i zidentyfikuj wartości graniczne i wartości klas równoważności, jak powyżej.
- Zidentyfikuj wymiary drugorzędne i przeanalizuj każdy w klasyczny sposób. (W powyższym przykładzie Płeć jest wymiarem drugorzędnym).
- Zidentyfikuj i przetestuj zmienne, które przechowują wyniki (zmienne wyjściowe).
- Oceń, w jaki sposób program wykorzystuje wartość tej zmiennej.
- Zidentyfikuj dodatkowe potencjalnie powiązane zmienne do testowania kombinacji.
- Wyobraź sobie ryzyko, które niekoniecznie odnosi się do oczywistego wymiaru.
- Zidentyfikuj i wymień nieanalizowane zmienne. Zbierz informacje do późniejszej analizy.
- Podsumuj swoją analizę za pomocą tabeli ryzyka / równoważności.
Podsumowanie:
Testowanie domeny, jak opisano powyżej, wymaga wiedzy na temat dostarczania odpowiednich danych wejściowych, aby osiągnąć pożądane wyniki. Dlatego można go używać tylko do małych fragmentów kodu.