Привет! Продолжаю изучать автоматизацию и сейчас структурирую тесты что бы выглядело не как простыня (поскольку у нас атоматизоторов у компании нету, пока спросить некого, прошу вашего совета, подсказки)
Сейчас сфокусировался на изучении того, что рекомендовали мне здесь на форуме, в частности приминение фикстуры. Я уже имплементировал, но хочу спросить про другие формы или просто, нормальная(распространенная) ли такая архитектура в начинающих автоматизаторов.
И так:
Структура проекта в Pycharm:
Директория
Пакет1
файл з вспомагательными методами и основными:
Напр:
def login_action(self):
self.driver.get("http://")
self.driver.find_element_by_name("email").send_keys("admin@admin.admin")
self.driver.find_element_by_name("password").send_keys("admin@admin.admin")
self.driver.find_element_by_class_name("btn").click()
def login_page(self):
self.driver.get("http://")
def logout(self):
self.driver.quit()
#REPLY NOTIFICATION
def reply_notification(self):
self.driver.find_element_by_link_text("Notifications").click()
self.driver.implicitly_wait(2)
self.driver.find_element_by_link_text("Inbox").click()
#link of not
self.driver.find_element_by_class_name("mailbox-subject").click()
self.driver.find_element_by_class_name("show-reply-form").click()
#REPLY NOTIFICATION 2
def reply_notification(self):
self.driver.find_element_by_link_text("Notifications").click()
self.driver.implicitly_wait(2)
self.driver.find_element_by_link_text("Inbox").click()
Пакет2
файлы в каждом по неколько тестов(на модуль)
Например:
from preconditon.application import Application
tests_classes=[
Application
]
def test_forgot_password_login_but(app):
app.login_page()
app.forgot_password_login_but()
app.logout()
и в корне директории файл conftest
import pytest
from preconditon.application import Application
@pytest.fixture()
def app(request):
fixture = Application()
return fixture
Думаю расказывать не нужно что я каждый раз делаю, когда добавляю новый тест.
Теперь вопрос, так нормально для начала или что то нужно уже сейчас сменить (просто времени не много и проект поджимает, + паралельно появится второй и я хочу на выходных вот сказать наперед все сделать)
Спасибо на перед за советы