Sobes.tech
Middle+

Opowiedz nam o infrastrukturze swojego frameworka.

sobes.tech AI

Odpowiedź od AI

Framework jest zbudowany na architekturze warstwowej.

  • Warstwa testowa: Zawiera klasy i metody testowe opisujące scenariusze testowe. Używa frameworka testowego (JUnit 5 / TestNG) do adnotacji i wykonywania testów.
  • Warstwa stron (Page Object Model): Implementuje wzorzec Page Object Model (POM). Każda klasa strony reprezentuje pojedynczą stronę internetową lub jej część i zawiera metody do interakcji z elementami i wykonywania działań.
  • Warstwa utilitarnych: Zawiera klasy i funkcje pomocnicze do wykonywania wspólnych zadań, takich jak praca z danymi testowymi (czytanie z plików, bazy danych), logowanie (SLF4j), zrzuty ekranu, zarządzanie konfiguracją (OwnerR) itp.
  • Warstwa sterownika: Abstrahuje pracę z WebDriverem (np. Selenium WebDriver). Odpowiada za inicjalizację, konfigurację i zarządzanie instancjami driverów dla różnych przeglądarek i platform (bezpośrednio lub przez Selenide).
  • Raportowanie: Zintegrowane z systemem raportowania (Allure Report) do generowania szczegółowych raportów z wykonania testów, w tym kroków, zrzutów ekranu i logów.
  • Integracja CI/CD: Framework jest skonfigurowany do uruchamiania w pipeline CI/CD (Jenkins / GitLab CI) z użyciem narzędzi do budowania (Maven / Gradle).

Dodatkowo mogą być dodane warstwy do pracy z API (REST Assured), bazami danych lub aplikacjami mobilnymi, w zależności od specyfiki testowanego produktu. Zarządzanie zależnościami odbywa się za pomocą systemów zarządzania zależnościami (Maven / Gradle).

Przykład struktury projektu:

// Przykład struktury projektu frameworka
src/test/java/com/example/tests/
    TestClass1.java
    TestClass2.java
src/test/java/com/example/pages/
    LoginPage.java
    HomePage.java
src/test/java/com/example/utils/
    DataReader.java
    LoggerUtil.java
src/test/resources/
    config.properties
    testdata.json
pom.xml (lub build.gradle)