Conversation
| def test_transition_from_order_page_to_main_page(self, driver,): | ||
| switch_page = HeaderPageLocators(driver) | ||
| main_page = MainPage(driver) | ||
| driver.get(TestUrl.MAIN_URL) |
There was a problem hiding this comment.
Нужно исправить: здесь и далее драйвер не должен получаться в тестовом методе, а должен управляться через фикстуру.
Аналогично и с инициализацией страниц.
Нужно вынести driver.get() и инициализацию страниц в фикстуры для всех тестов
pages/page_header.py
Outdated
| from pages.page_baze import BasePage | ||
|
|
||
|
|
||
| class HeaderPageLocators(BasePage): |
There was a problem hiding this comment.
Нужно исправить: здесь и далее название вводит в заблуждение (это не локаторы, а страница)
tests/test_page_header.py
Outdated
| switch_page = HeaderPageLocators(driver) | ||
| main_page = MainPage(driver) | ||
| driver.get(TestUrl.MAIN_URL) | ||
| main_page.accept_cookie() |
There was a problem hiding this comment.
Можно улучшить: здесь и далее повторение кода в начале тестов выглядит как предусловие, а значит. может быть вынесено в фикстуру
pages/page_order.py
Outdated
| rent_date = generate_date_rent() | ||
| self.add_text_to_element(OrderPageLocators.input_date_rent, rent_date) | ||
| from selenium.webdriver.common.keys import Keys | ||
| self.driver.find_element(*OrderPageLocators.input_date_rent).send_keys(Keys.ENTER) |
There was a problem hiding this comment.
Нужно исправить: здесь и далее вызов driver.find_element() минует методы BasePage. Методы Page object должны скрывать работу с driver за высокоуровневыми методами. Постарайся всегда использовать методы BasePage для работы с элементами
tests/test_page_main.py
Outdated
| main_page = MainPage(driver) | ||
| driver.get(TestUrl.MAIN_URL) | ||
| main_page.accept_cookie() | ||
| assert main_page.check_answer_for_question(question_id) == expected_answer |
There was a problem hiding this comment.
Нужно исправить: запусти, пожалуйста, тест и посмотри не падает ли он
tests/test_page_order.py
Outdated
| ) | ||
| order_page.click_button_order_finall() | ||
| order_page.confirmation_order() | ||
| assert 'Заказ оформлен' in order_page.check_accept_order() No newline at end of file |
There was a problem hiding this comment.
Нужно исправить: запусти, пожалуйста, тест и посмотри не падает ли он
| ) | ||
| self.order_page.click_button_order_finall() | ||
| self.order_page.confirmation_order() | ||
| assert 'Заказ оформлен' in self.order_page.check_accept_order() |
There was a problem hiding this comment.
Нужно исправить: пожалуйста, запусти тест повторно. Он падает из-за из‑за таймаута при ожидании видимости элемента на странице оформления заказа, в частности посмотри порядок заполнения и локатор станции метро
Также это может быть связано с разными используемыми таймаута. Стоит проверить
| self.fill_in_checkbox_colour(colour) | ||
| self.fill_in_comment_input(comment) | ||
|
|
||
| self.click_button_order_finall() |
There was a problem hiding this comment.
Нужно исправить: метод-дубликат?
| def test_transition_from_order_page_to_main_page(self, driver,): | ||
| switch_page = HeaderPageLocators(driver) | ||
| main_page = MainPage(driver) | ||
| driver.get(TestUrl.MAIN_URL) |
No description provided.