W tej lekcji zrobimy sobie mały refaktor, który przygotuje nas do następnej lekcji. Dodamy nową metodę do klasy CartPage, która zastąpi inną, która tam już jest.
Uwaga: plik z projektem testowym, na którym pracujemy w lekcjach dotyczących POM wymaga uzyskania dostępu. Dostaniesz go tutaj.
Zmiana metody wynika z kilku rzeczy. Po pierwsze: dotychczasowa metoda ma nazwę, z której nie do końca wiadomo co robi. A po drugie, robi coś trochę na opak i zwraca trochę inną informację niż tą, którą potrzebujemy w teście. Ponieważ w kolejnej lekcji w tej klasie dojdzie nowa metoda, trzeba tam trochę posprzątać, żeby się nie pogubić.
Zaktualizowane klasy
Klasa testowa: CartTests
Ukryta treść
Nie masz dostępu do tego kursu. Wykup dostęp albo zaloguj się, by móc zobaczyć pełną lekcję.
Bazowa klasa testowa: BaseTest
Ukryta treść
Nie masz dostępu do tego kursu. Wykup dostęp albo zaloguj się, by móc zobaczyć pełną lekcję.
Klasa Page Object: CartPage
Ukryta treść
Nie masz dostępu do tego kursu. Wykup dostęp albo zaloguj się, by móc zobaczyć pełną lekcję.
Klasa Page Object: CategoryPage
Ukryta treść
Nie masz dostępu do tego kursu. Wykup dostęp albo zaloguj się, by móc zobaczyć pełną lekcję.
Klasa Page Object: ProductPage
Ukryta treść
Nie masz dostępu do tego kursu. Wykup dostęp albo zaloguj się, by móc zobaczyć pełną lekcję.
Klasa Page Object: BasePage
Ukryta treść
Nie masz dostępu do tego kursu. Wykup dostęp albo zaloguj się, by móc zobaczyć pełną lekcję.
Lista lekcji dotyczących Page Object Model:
Cześć,
Przerabiam moje testy na POM i mam wątpliwość czy poprawne jest podejście, gdy w metodzie testowej:
1. Tworzę obiekty z kilku klas (np. MainPage oraz CartPage)
2. Metodę do asercji umieszczam w CartPage, natomiast w CartTests tylko ją wywołuję
Testy działają, natomiast zastanawia mnie czy to jest zgodne z Page Object Model i co sądzisz o takim rozwiązaniu.
Halko! Na podstawie tego, co widzę