Middle+
Papaskinkite apie savo karkaso infrastruktūrą.
sobes.tech AI
Atsakymas iš AI
Rėmėjas yra suprojektuotas pagal sluoksninę architektūrą.
- Testų sluoksnis: apima testų klases ir metodus, aprašančius testavimo scenarijus. Naudojamas testavimo framework'as (JUnit 5 / TestNG) anotacijoms ir testų vykdymui.
- Puslapio sluoksnis (Page Object Model): įgyvendina Page Object Model (POM). Kiekviena puslapio klasė atstovauja atskirą žiniatinklio puslapį arba jo dalį ir turi metodus sąveikai su elementais ir veiksmų atlikimui.
- Naudingi įrankiai: apima pagalbinius klases ir funkcijas bendriems užduotims atlikti, pvz., testinių duomenų tvarkymui (failų, duomenų bazių skaitymui), žurnalavimui (SLF4j), ekrano kopijoms, konfigūracijos valdymui (OwnerR) ir kt.
- Vairuotojo sluoksnis: abstrakcionuoja darbą su žiniatinklio vairuotoju (pvz., Selenium WebDriver). Atsakingas už vairuotojo instancijų inicijavimą, konfigūravimą ir valdymą skirtingiems naršyklėms ir platformoms (tiesiogiai arba per Selenide).
- Ataskaitų teikimas: integruotas su ataskaitų sistema (Allure Report) detalių ataskaitų generavimui apie testų vykdymą, įskaitant žingsnius, ekrano kopijas ir žurnalus.
- CI/CD integracija: rėmėjas yra sukonfigūruotas paleisti CI/CD eilėje (Jenkins / GitLab CI) naudojant statybos įrankius (Maven / Gradle).
Be to, gali būti įtraukti sluoksniai darbui su API (REST Assured), duomenų bazėmis ar mobiliosiomis programėlėmis, priklausomai nuo testuojamo produkto specifikos. Priklausomybių valdymas vykdomas naudojant priklausomybių valdymo sistemą (Maven / Gradle).
Pavyzdinė projekto struktūra:
// Framework projekto struktūros pavyzdys
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 (arba build.gradle)