Sobes.tech
Middle+

Разкажете ни за инфраструктурата на вашия фреймуърк.

sobes.tech AI

Отговор от AI

Рамката е изградена върху слоеста архитектура.

  • Слой за тестове: Съдържа тестови класове и методи, които описват тестовите сценарии. Използва тестов фреймуърк (JUnit 5 / TestNG) за анотации и изпълнение на тестовете.
  • Слой на страниците (Page Object Model): Реализира шаблона Page Object Model (POM). Всеки клас на страницата представлява уеб страница или нейна част и съдържа методи за взаимодействие с елементите и изпълнение на действия.
  • Помощни класове: Съдържа помощни класове и функции за общи задачи, като работа с тестови данни (четене от файлове, бази данни), логване (SLF4j), скрийншоти, управление на конфигурацията (OwnerR) и др.
  • Драйверен слой: Абстрахира работата с уеб драйвера (например, Selenium WebDriver). Отговаря за инициализация, настройка и управление на екземпляри на драйвера за различни браузъри и платформи (директно или чрез Selenide).
  • Отчитане: Интегрирано с системата за отчитане (Allure Report) за генериране на подробни отчети за изпълнението на тестовете, включително стъпки, скрийншоти и логове.
  • Интеграция CI/CD: Рамката е настроена за изпълнение в CI/CD конвейер (Jenkins / GitLab CI) с използване на инструменти за билдване (Maven / Gradle).

Освен това могат да бъдат включени слоеве за работа с API (REST Assured), бази данни или мобилни приложения, в зависимост от спецификата на тестирания продукт. Управлението на зависимости се извършва чрез системи за управление на зависимости (Maven / Gradle).

Примерна структура на проекта:

// Примерна структура на проекта на рамката
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 (или build.gradle)