w tym artykule omówię, jak zaprojektować przypadki testowe dla funkcji daty urodzenia (DOB).
ta funkcjonalność jest bardzo ważna, ponieważ ma wiele zastosowań.
niektóre z tych zastosowań obejmują takie obszary, jak Bezpieczeństwo i identyfikacja.
zapraszam do korzystania z przypadku testowego i zmienić go odpowiednio do swoich potrzeb.
zanim przejdziesz dalej, możesz dowiedzieć się więcej o pisaniu spraw testowych.
spis treści
jakie są kluczowe rzeczy, które powinieneś przetestować pod kątem funkcji Daty Urodzenia?
Data urodzenia to tylko jedno pole.
jednak moim zdaniem jest to jedno z najważniejszych pól podczas rejestracji profilu użytkownika.
rozbijmy elementy;
- dzień (pole tekstowe)
- miesiąc (pole tekstowe)
- rok (pole tekstowe)
- czy wszystkie elementy są poprawne?
scenariusze, w których można użyć funkcji Daty Urodzenia
- Rejestracja konta / użytkownika
- sprawdzanie wieku użytkownika podczas rejestracji produktu lub usługi
- Resetowanie danych logowania, gdy użytkownik zapomni
- użytkownik Admin w ramach serii pytań bezpieczeństwa
omówmy wyżej wymienione scenariusze
scenariusz 1: przypadki testowe dla Daty Urodzenia – weryfikacja wieku użytkownika
weryfikacja wieku jest używana na wielu różnych platformach. Poniżej przedstawiamy kilka scenariuszy testowych, które warto rozważyć.
- użytkownik chce utworzyć konto w serwisie społecznościowym/e-mail i musi mieć ukończone 13 lat.
- użytkownik stara się o tymczasowe prawo jazdy w Wielkiej Brytanii. Minimalny wiek to 17 lat.
- zakup zastrzeżonego produktu lub usługi online. Na przykład oglądanie ograniczonych filmów z YouTube, które wymagają przeprowadzenia kontroli wieku.
- kupuj alkohol lub gry online!
Scenariusz 2: Przypadki testowe dla Daty Urodzenia-Resetowanie danych logowania gdy użytkownik zapomni
- gdy użytkownik zapomni swoich danych logowania, system może poprosić o dalszą weryfikację w celu udowodnienia tożsamości użytkownika.
Scenariusz 3: przypadki testowe dla Daty Urodzenia – administrator systemu zadaje DOB w ramach serii pytań bezpieczeństwa
- podobny do powyższego scenariusza, jednak z elementem ludzkim. W tym scenariuszu Administrator aplikacji chce zweryfikować, czy użytkownik dzwoniący jest rzeczywiście tym, za kogo się podaje, a DOB jest częścią zestawu pytań weryfikacyjnych bezpieczeństwa.
wymagania biznesowe i funkcjonalne
zawsze powinieneś spróbować spełnić pewne wymagania, jeśli twoje testy będą wysokiej jakości.
zawsze mówię moim kolegom, którzy nie testują, że jako testerzy bazujący na specyfikacjach jesteśmy tak dobrzy, jak mamy wymagania.
zwróć uwagę na moich znajomych analityków biznesowych.
Podzielmy kilka przykładowych wymagań, które dla Ciebie stworzyłem.
starałem się być szczegółowy, ale nie chcę przesadzać.
tam, gdzie to możliwe, zawsze powinieneś spróbować stworzyć matrycę śledzenia wymagań (RTM), w której możesz przechowywać wszystkie wymagania projektu.
identyfikator wymogu | opis wymogu | uwagi |
REQ-DOB-0001 | system musi rejestrować datę urodzenia. | |
REQ-DOB-0002 | Data urodzenia musi być w formacie UK. na przykład format daty pola musi być w poniższej kolejności. DD / MM / RRRR D = Dzień (format numeryczny)M = miesiąc (format numeryczny)Y = rok (format numeryczny) |
jeśli wymagana jest opcja rozwijana, interfejs użytkownika może zaktualizować i wyświetlić minimalną datę rozpoczęcia, która = 13 lat. może również akceptować ręczne wprowadzanie danych . |
REQ-DOB-0003 | Manual Dob Form Entry system musi dać użytkownikowi możliwość ręcznego wprowadzania daty urodzenia |
wymóg ten można rozszerzyć o opcję kontroli daty/kalendarza. jednak dla uproszczenia użyjemy opcji formularza ręcznego. z punktu widzenia użyteczności selektor daty jest mniej żmudny i podatny na mniej problemów z walidacją. |
REQ-DOB-0004 | ograniczenie wiekowe użytkowników minimalny wiek użytkowników to 13 lat. system powinien automatycznie odrzucić każdego użytkownika, który nie ukończył 13 lat od bieżącej daty. |
|
REQ-DOB-0005 | Walidacja pola dziennego pole dzienne musi być poprawną liczbą od 1 do 31. Dfbr1 – Day field business Rule 1 system powinien odrzucić każdą wartość mniejszą niż 1 i większą niż 31. |
|
REQ-DOB-0006 | Walidacja pola miesiąca poprawne pole miesiąca będzie liczbą od 1 do 12. miesiąc 1 oznacza Styczeń, a miesiąc 12 Grudzień. Mfbr1-Month Field business Rule 1 gdy użytkownik wprowadzi miesiąc jako wartość liczbową, system powinien zweryfikować, czy wartość dnia jest poprawna. |
|
REQ-DOB-0007 | sprawdzanie poprawności pola roku pole roku jest 4-znakową wartością liczbową, która powinna cofnąć się nie dalej niż o 125 lat od bieżącego roku. na przykład, jeśli dziś jest 1 września 2021 r., najwcześniejszą datą, do której system może przejść, jest 1 września 1896 r. |
jest kilka osób, które mają ponad 110 lat, w rezultacie dodałem, ale więcej. |
REQ-DOB-0008 | Walidacja roku przestępnego jeśli dana osoba urodzi się w roku przestępnym, system powinien potwierdzić; rok, w którym się urodziła, był w rzeczywistości rokiem przestępnym. domyślna Data urodzenia to 1 marca w latach nie przestępnych . jeśli wprowadzony rok jest nieprawidłowy, system powinien wyświetlić komunikat o błędzie. |
Uwaga: w niektórych krajach niewykonanie roku przestępnego do 28 lutego jest uważane za nielegalne. w tym przypadku skorzystamy z perspektywy prawnej Wielkiej Brytanii, która ma zostać zastosowana 1 marca. |
REQ-DOB-0009 | Sprawdź poprawną datę gdy użytkownik wprowadzi całą datę urodzenia, system powinien sprawdzić jej ważność. zasada biznesowa 1: sprawdź, czy dzień jest zgodny z prawidłowym miesiącem. |
|
REQ-DOB-0010 | Obliczanie Daty Urodzenia |
podróż użytkownika
przypadek testowy zazwyczaj obejmuje walidację pozytywną i negatywną. Będzie to wyglądać mniej więcej tak;
- użytkownik przechodzi do strony rejestracji
- po wyświetleniu monitu użytkownik wpisuje nieprawidłową datę urodzenia
- użytkownik wpisuje prawidłową datę urodzenia (ale przez pomyłkę poniżej 13 roku życia)
- system wyświetla komunikat o błędzie informujący użytkownika, że nie może się zarejestrować, jeśli nie ma ukończonych 13 lat
- użytkownik wpisuje prawidłową datę urodzenia data urodzenia (która jest w wieku powyżej 13 lat)
- system przetwarza i weryfikuje datę jako prawidłową.
Test przypadku Daty Urodzenia przykład
numer kroku | krok testu | identyfikator wymogu | oczekiwany wynik | rzeczywisty wynik | Status(Pass / Fail) | pozytywny / negatywny Test |
1 | dostęp do strony formularza rejestracyjnego użytkownika dla testowanej aplikacji (AUT) | użytkownik ląduje na stronie rejestracji użytkownika. | + | |||
2 | Pomiń pole Data urodzenia i wypełnij poprawne dane w pozostałej części formularza | poprawne dane są wypełniane we wszystkich polach z wyjątkiem pola Data urodzenia. | + | |||
3 | negatywny scenariusz testu w polu „dzień” wprowadź nieprawidłową liczbę, taką jak => 32. |
pole dzień jest wypełnione nieprawidłowym wpisem. na przykład: 32/MM / YYY Uwaga: w zależności od sposobu pisania wymagań aplikacja może wyświetlać komunikat o błędzie w tym momencie lub po wypełnieniu całego pola daty. |
– | |||
4 | w polu „miesiąc” użytkownik wprowadza prawidłową wartość liczbową. | wprowadza się prawidłową wartość liczbową | + | |||
5 | w polu ” rok ” użytkownik wprowadza poprawną wartość. | wpisany jest prawidłowy rok urodzenia. | + | |||
6 | użytkownik kliknie na 'Submit’ | system wyświetla komunikat o błędzie ostrzegający, że pole dzień jest nieprawidłowe. Uwaga: Wszystkie Pola są nadal wypełnione ręcznie wprowadzanymi danymi, dzięki czemu użytkownik może dokonać korekty. pola są nadal edytowalne.. |
+ | |||
7 | negatywny przypadek testowy w polu dzień użytkownik wprowadza puste miejsce. |
wszystkie pozostałe pola są nadal wypełnione, a pole dnia jest aktualizowane, pozostawia puste | – | |||
8 | użytkownik kliknie wyślij | system wyświetla komunikat o błędzie ostrzegający, że pole dzień jest nieprawidłowe. wszystkie pola są nadal wypełnione ręcznie wprowadzanymi danymi, dzięki czemu użytkownik może dokonać korekty.. |
+ | |||
9 | testowanie reguły biznesowej w polu’ day 'użytkownik wpisuje wartość ’31’. |
wartość ’ 31 ’ jest wprowadzana do pola dnia. | – | |||
10 | w polu miesiąc użytkownik wprowadza wartość 09 Uwaga: 9 = wrzesień |
wartość ” 09 ” jest wypełniana w polu miesiąc. | ||||
11 | w polu rok użytkownik wprowadza poprawną wartość. np. 1985 |
w polu ” rok ” wprowadza się poprawną wartość. | ||||
12 | użytkownik kliknie na 'Submit’ | zostanie wyświetlony „przydatny” komunikat o błędzie. wiadomość informuje użytkownika, że Wrzesień nie ma 31 dni. proszę o poprawienie |
||||
13 | użytkownik zmienia wartość dnia na 30 | pole Dzienne jest oznaczone symbolem „30”. | ||||
14 | użytkownik kliknie na 'Submit’ | system; a) przetwarza formularz b) weryfikuje datę urodzenia c) weryfikuje zgodnie z regułami biznesowymi przekierowuje użytkownika na stronę potwierdzenia rejestracji. |
nie chciałem, aby ten przypadek testowy był zbyt długi, ale możesz również dodać kilka kroków testowych, aby zapewnić;
- Użytkownik ma ukończone 13 lat
- użytkownik, który urodził się 29 lutego, jako datę urodzenia przyjmuje datę 1 marca (z wyjątkiem lat przestępnych).
jeśli masz kontrolę Kalendarza, to „rzecz”, w której wybierasz datę za pomocą myszki, testowanie tego powinno być o wiele łatwiejsze.
to dlatego, że jest mniej testów funkcjonalnych i mniej danych testowych do przygotowania.
w ramach procesu rejestracji możesz również rozważyć przypadki testowe zmiany hasła.
Analiza wartości granicznych
Poniżej znajdują się niektóre wartości graniczne, o których warto pomyśleć.
wiek
granica 1 | granica 2 |
0 -13 | 13 > |
równoważność partycji
masz kilka partycji w ramach tego testu, są one;
wiek
partycja 1 | partycja 2 |
0-12 | >13 |
świetny dodatek do Twojego zestawu do testowania regresji
uwielbiam szczegółowy test funkcjonalny, taki jak ten. Dlaczego?
ponieważ mogę dodać go do mojego pakietu testów regresji.
gdy masz już wszystkie skomplikowane szczegóły, możesz dosłownie uruchomić te testy, kiedy ich potrzebujesz.
niezależnie od tego, czy są to testy ręczne, czy automatyczne.
podsumowanie
mam nadzieję, że powyższe powinno być dobrym przypadkiem testowym dla testów funkcjonalnych daty urodzenia.
uwielbiam tego typu techniki testowania czarnych skrzynek, ponieważ pamiętam, że robiłem wiele w mojej karierze.
jeśli kiedykolwiek natkniesz się na pola daty testowania, możesz być również zainteresowany pisaniem przypadków testowych dla aplikacji kalendarza.
Praca w dziedzinie zapewniania jakości nie jest łatwa, ale jest to jedno z wielu wyzwań związanych z testowaniem oprogramowania.