1. Wprowadzenie do problemu
W praktyce może zaistnieć taka sytuacja, że wartość pewnego pola lub wartości pól na formularzu nie będą obliczone wzorem, nie będą ciągiem liczbowym czy ciągiem znaków wpisanym przez użytkownika, lecz będą wyznaczane za pomocą pewnych warunków logicznych lub połączonych relacji, zagnieżdżonych lub zależnych od wartości innych pól. Takim przykładem może być dowolny sklep internetowy, który posiada pola z najnowszymi produktami. W przypadku sklepu internetowego z ubraniami:
- Jeśli użytkownikiem jest kobieta, to należy wyświetlić ubrania damskie w sekcji najnowsze produkty,
- W przeciwnym przypadku należy pokazać ubrania męskie.
Ale kobiety oraz mężczyźni mogą być w różnym wieku, wobec tego będą zwracać uwagę na inne ubrania. Dlatego też aplikacja powinna brać pod uwagę wiek zalogowanej osoby. W przypadku ubrań ważna jest również moda albo te produkty, które są najnowsze.
Problem polega na tym, że czasami nie da sią ”na sztywno” zaimplementować pól w sekcji, wymagalności pól lub wartości czy opcji w polach formularza. Wobec tego muszą one być sterowane wartościami z innych pól w testowanym systemie, ale tak, jak oczekuje tego użytkownik (musi być w aplikacji zaimplementowana możliwość definiowana własnych relacji). Jest to rodzaj funkcjonalności, na który z pewnością należy zwrócić uwagę podczas testowania. Sklep z ubraniami to prosty przykład, jednak istnieją systemy np. aplikacje finansowe, w których zaimplementowana jest silnie złożona kalkulacja, gdzie pewne wartości są sterowane za pomocą innych wartości zdefiniowanych przez użytkownika - a takie testy już wymagają cierpliwości oraz wykonania wielu przypadków testowych.
Powyższy tekst jest fragmentem publikacji. Pełen artykuł można pobrać
O autorze
Marek Żukowicz jest absolwentem matematyki na Uniwersytecie Rzeszowskim. Obecnie pracuje jako tester. Jego zainteresowania skupiają się wokół testowania, matematyki, zastosowania algorytmów ewolucyjnych oraz zastosowania matematyki w procesie testowania. Interesuje się również muzyką, grą na akordeonach oraz na perkusji.