Wpis z mikrobloga

Mirki, mam pare pytań do testerów którzy tworzą testy automatyczne z użyciem Selenium i Javy. Obecnie pracuję jako QA Engineer z tym, że są to głównie testy manualne, sam z siebie zacząłem naukę Selenium (Podstawy+ Javy znam).

Pytanie głównie dotyczy podejścia do pisania testów a mianowicie czy w branży używa się tylko i wyłącznie Page Object Patterns? Jeżeli tak, to jak wygląda ogólna struktura testów?
Osobiście u mnie w repo wygląda to tak, że mam główna klasę testów GuiTest, po której będą dziedziczyć poszczególne testy. Tam mam ogólne metody dotyczące testów, takie jak inicjalizacja driver'a przed testem, zamknięcie driver'a po teście, screenshot w wypadku porażki. Czy takie podejście jest prawidłowe?

Z kolei każda ze stron będzie dziedziczyć po BasicPage. W BasicPage mam metody m.in getElement() która wykorzystuje WebDriverWait ( Tutaj chciałem zadać pytanie czy prawidłowym jest łączenie implicitlyWait ustawionego w samym driverz'e z conditional wait'em w metodzie ? ), oprócz tego posiadam metody na podświetlanie elementu, czekanie na załadowanie strony ( informacja z Document.readyState ), wykonanie JS'a jako Stringa itp.

Czy te wszystkie metody powinny być zaimplementowane w klasie BasicPage po której będą dziedziczyć inne strony, czy powinny one być statyczne, i przyjmować driver jako parametr w jakiejś osobnej klasie?

#testowanieoprogramowania #selenium #qa
  • 3
  • Odpowiedz
mam główna klasę testów GuiTest, po której będą dziedziczyć poszczególne testy. Tam mam ogólne metody dotyczące testów, takie jak inicjalizacja driver'a przed testem, zamknięcie driver'a po teście, screenshot w wypadku porażki


@jadupl: To brzmi ok. Inicjalizacja w setUp, jakieś screenshoty i quit w tearDown i każdy test dziedziczący z tego.

czy w branży używa się tylko i wyłącznie Page Object Pattern


@jadupl: Nie tylko ale ten wzorzec jest
  • Odpowiedz
To jeszcze pytanie odnośnie bibloteki do testów, nie wiem czy to moje szczęscię ale przeglądająć oferty większość była z wymgoiem znania TestNG? Jak to sie ma do realiów, naprawdę TestNG jest częsciej wykorzystywany niż JUnit ? Osobiście w tych moich wypocinach na github'ie korzystam z TestNG (dużo łatwiejsza imo konfiguracja, parametry i dodatkowo proste uruchamianie kilku testów równolegle).
  • Odpowiedz