Skip to content

Commit c907776

Browse files
committed
Modify logging methods
1 parent 6a31970 commit c907776

8 files changed

+45
-134
lines changed

helpers/web_driver_listener.py

+20-37
Original file line numberDiff line numberDiff line change
@@ -22,48 +22,31 @@ def after_navigate_to(self, url, driver):
2222
self.logger.info(f"Navigated to {url}")
2323

2424
def before_find(self, by, value, driver):
25-
self.logger.info(f"Finding element by {by} {value}")
25+
self.logger.info(f"Searching for element by {by} {value}")
2626

2727
def after_find(self,by, value, driver):
2828
self.logger.info(f"Element by {by} {value} found")
2929

3030
def before_click(self, element, driver):
31-
self.logger.info(f"Clicking on {element.get_attribute('text')}")
31+
if element.get_attribute("text") is None:
32+
self.logger.info(f"Clicking on {element.get_attribute('class')}")
33+
else:
34+
self.logger.info(f"Clicking on {element.get_attribute('text')}")
3235

3336
def after_click(self, element, driver):
34-
self.logger.info(f"{element.get_attribute('text')} clicked")
37+
if element.get_attribute("text") is None:
38+
self.logger.info(f"{element.get_attribute('class')} clicked")
39+
else:
40+
self.logger.info(f"{element.get_attribute('text')} clicked")
3541

36-
# def __init__(self, driver):
37-
# self.browser = driver
38-
# self.driver = EventFiringWebDriver(self.browser, WebDriverListener())
39-
# self.logger = L.getLogger("logger")
40-
# self.navigating += self.web_driver_listener_navigating
41-
# self.navigated += self.web_driver_listener_navigated
42-
# self.finding_element += self.web_driver_listener_finding_element
43-
# self.element_clicking += self.web_driver_listener_element_clicking
44-
# self.element_clicked += self.web_driver_listener_element_clicked
45-
# self.element_value_changed += self.web_driver_listener_element_value_changed
46-
#
47-
# def web_driver_listener_navigating(self, sender, event_arg):
48-
# L.log(f"Navigating to {event_arg.Url}")
49-
#
50-
# def web_driver_listener_navigated(self, sender, event_arg):
51-
# self.log_screenshot(f"Navigated to [{event_arg.Driver.Title}]({event_arg.Url})")
52-
#
53-
# def web_driver_listener_finding_element(self, sender, event_arg):
54-
# self.log_message(f"Finding element `{event_arg.FindMethod}`")
55-
#
56-
# def web_driver_listener_element_clicking(self, sender, event_arg):
57-
# self.log_message(f"Clicking on the {event_arg.Element.TagName} `{event_arg.Element.Text}` {event_arg.Element}")
58-
#
59-
# def web_driver_listener_element_clicked(self, sender, event_arg):
60-
# self.log_screenshot(f"{event_arg.Element} clicked")
61-
#
62-
# def web_driver_listener_element_value_changed(self, sender, event_arg):
63-
# self.log_screenshot(f"Value of the {event_arg.Element} changed to `{event_arg.Value}`")
64-
#
65-
# def log_message(self, text):
66-
# self.logger.info(text)
67-
#
68-
# def log_screenshot(self, file_name):
69-
# SE.take_standard_screenshot(file_name)
42+
def before_change_value_of(self, element, driver):
43+
self.logger.info(f"{element.get_attribute('text')} value changed")
44+
45+
def before_quit(self, driver):
46+
self.logger.info("Driver quitting")
47+
48+
def after_quit(self, driver):
49+
self.logger.info("Driver quitted")
50+
51+
def on_exception(self, exception, driver):
52+
self.logger.info(exception)

pages/login_page.py

+2-28
Original file line numberDiff line numberDiff line change
@@ -1,57 +1,31 @@
11
import allure
22
from selenium.webdriver.common.keys import Keys
33
from locators.locators import LogInLocators
4-
from selenium.webdriver.common.by import By
5-
from selenium.webdriver.support import expected_conditions as ec
6-
74

85

96
class LogInPage:
107
def __init__(self, driver):
118
self.driver = driver
12-
#self.logger = logging.getLogger(__name__)
13-
14-
search_input = By.CSS_SELECTOR, "input[name='q']"
15-
contact_link = "[data-target='#exampleModal']"
16-
#contact_link = By.LINK_TEXT, "Contact"
179

18-
@allure.step("Opening demoblaze.com website")
10+
@allure.step("Opening phptravels.net website")
1911
def open_page(self):
20-
#self.logger.info("Opening phptravels.net website")
21-
self.driver.get("https://demoblaze.com/")
22-
23-
@allure.step("Provide text into search input")
24-
def go_to_contact(self):
25-
# el = ec.visibility_of(self.driver.find_element(self.contact_link))
26-
e = self.driver.find_element_by_css_selector(self.contact_link)
27-
e.click()
28-
29-
@allure.step("Provide text into search input")
30-
def search(self, text):
31-
self.driver.find_element(self.search_input).send_keys(text, Keys.ENTER)
12+
self.driver.get("http://www.phptravels.net/")
3213

3314
@allure.step("Expanding account menu")
3415
def expand_account_menu(self):
35-
#self.logger.info("Expanding account menu")
3616
self.driver.find_element(*LogInLocators.user_account_menu).click()
3717

3818
@allure.step("Opening login page")
3919
def open_login_page(self):
40-
#self.logger.info("Opening login page")
4120
self.driver.find_element(*LogInLocators.login_link).click()
4221

4322
@allure.step("Login with email: '1'")
4423
def set_user_inputs(self, email, password):
45-
self.logger.info("Setting user email to {}".format(email) + " and password")
4624
self.driver.find_element(*LogInLocators.email_input).click()
4725
self.driver.find_element(*LogInLocators.email_input).send_keys(email)
4826
self.driver.find_element(*LogInLocators.password_input).click()
4927
self.driver.find_element(*LogInLocators.password_input).send_keys(password, Keys.ENTER)
5028

5129
@allure.step("Logout")
5230
def logout(self):
53-
self.logger.info("Logout")
5431
self.driver.find_element(*LogInLocators.logout_link).click()
55-
56-
57-

pages/search_flights_form.py

-18
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
import logging
21
import allure
32
from allure_commons.types import AttachmentType
43
from selenium.webdriver.common.by import By
@@ -10,56 +9,46 @@ class SearchFlightsForm:
109

1110
def __init__(self, driver):
1211
self.driver = driver
13-
self.logger = logging.getLogger(__name__)
1412

1513
@allure.step("Opening phptravels.net website")
1614
def open_page(self):
17-
self.logger.info("Opening phptravels.net website")
1815
self.driver.get("http://www.phptravels.net/")
1916

2017
@allure.step("Opening Flights tab")
2118
def open_flights_tab(self):
22-
self.logger.info("Opening Flights tab")
2319
self.driver.find_element(*SearchTabsLocators.flights_tab).click()
2420

2521
@allure.step("Selecting trip type to: '{1}'")
2622
def set_trip_type(self, trip_type):
27-
self.logger.info(f"Selecting trip type to: '{trip_type}'")
2823
self.driver.find_element(By.XPATH, f"//label[text()='{trip_type}']").click()
2924

3025
@allure.step("Selecting one way trip")
3126
def set_one_way(self):
32-
self.logger.info("Selecting one way trip")
3327
self.driver.find_element(*SearchFlightsFormLocators.one_way_radio).click()
3428

3529
@allure.step("Selecting round trip")
3630
def set_round_trip(self):
37-
self.logger.info("Selecting round trip")
3831
self.driver.find_element(*SearchFlightsFormLocators.round_trip_radio).click()
3932

4033
@allure.step("Setting cabin class")
4134
def set_cabin_class(self, cabin_class):
42-
self.logger.info("Setting cabin class")
4335
self.driver.find_element(*SearchFlightsFormLocators.cabinclass_dropdown).click()
4436
self.driver.find_element(By.XPATH, f"//li[text()='{cabin_class}']").click()
4537

4638
@allure.step("Setting location from: '{1}'")
4739
def set_loc_from(self, loc_from):
48-
self.logger.info(f"Setting location from: {loc_from}")
4940
self.driver.find_element(*SearchFlightsFormLocators.loc_from_inactive).click()
5041
self.driver.find_element(*SearchFlightsFormLocators.loc_input_active).send_keys(loc_from)
5142
self.driver.find_element(By.XPATH, f"//div[@class='select2-result-label'][contains(.,'({loc_from})')]").click()
5243

5344
@allure.step("Setting location to: '{1}'")
5445
def set_loc_to(self, loc_to):
55-
self.logger.info(f"Setting location to: {loc_to}")
5646
self.driver.find_element(*SearchFlightsFormLocators.loc_to_inactive).click()
5747
self.driver.find_element(*SearchFlightsFormLocators.loc_input_active).send_keys(loc_to)
5848
self.driver.find_element(By.XPATH, f"//div[@class='select2-result-label'][contains(.,'({loc_to})')]").click()
5949

6050
@allure.step("Setting start date to '{1}'/'{2}'/'{3}'")
6151
def set_start_date(self, start_year, start_month, start_day):
62-
self.logger.info(f"Setting start date to {start_year}/{start_month}/{start_day}")
6352
self.driver.find_element(*SearchFlightsFormLocators.flight_date_start).click()
6453
current_year = get_datestamp(self.driver, SearchFlightsFormLocators, ["datepicker_nav_title_years"])
6554
if current_year != start_year:
@@ -76,7 +65,6 @@ def set_start_date(self, start_year, start_month, start_day):
7665

7766
@allure.step("Setting end date to '{1}'/'{2}'/'{3}'")
7867
def set_end_date(self, end_year, end_month, end_day):
79-
self.logger.info(f"Setting end date to {end_year}/{end_month}/{end_day}")
8068
current_year = get_datestamp(self.driver, SearchFlightsFormLocators, ["datepicker_nav_title_years"])
8169
if current_year != end_year:
8270
self.driver.find_element(*SearchFlightsFormLocators.datepicker_nav_title_end).click()
@@ -96,36 +84,30 @@ def set_end_date(self, end_year, end_month, end_day):
9684

9785
@allure.step("Setting number of adults to '{1}'")
9886
def set_adults_number(self, adults_num):
99-
self.logger.info(f"Setting number of adults: {adults_num}")
10087
set_travellers_number(self.driver, adults_num, SearchFlightsFormLocators,
10188
["adults_input_value", "adults_add", "adults_sub"])
10289

10390
@allure.step("Setting number of adults to '{1}'")
10491
def set_kids_number(self, kids_num):
105-
self.logger.info(f"Setting number of kids: {kids_num}")
10692
set_travellers_number(self.driver, kids_num, SearchFlightsFormLocators,
10793
["kids_input_value", "kids_add", "kids_sub"])
10894

10995
@allure.step("Setting number of infants to '{1}'")
11096
def set_infants_number(self, infants_num):
111-
self.logger.info(f"Setting number of infants: {infants_num}")
11297
set_travellers_number(self.driver, infants_num, SearchFlightsFormLocators,
11398
["infants_input_value", "infants_add", "infants_sub"])
11499

115100
@allure.step("Performing search")
116101
def search_perform(self):
117-
self.logger.info("Performing search")
118102
self.driver.find_element(*SearchFlightsFormLocators.search_btn).click()
119103
allure.attach(self.driver.get_screenshot_as_png(), name="search_results", attachment_type=AttachmentType.PNG)
120104

121105
@allure.step("Getting input start date")
122106
def get_start_date(self):
123107
start_date = self.driver.find_element(*SearchFlightsFormLocators.flight_date_start)
124108
start_date_val = start_date.get_attribute("value")
125-
self.logger.info("Selected start date is: ", start_date_val)
126109

127110
@allure.step("Getting input end date")
128111
def get_end_date(self):
129112
end_date = self.driver.find_element(*SearchFlightsFormLocators.flight_date_end)
130113
end_date_val = end_date.get_attribute("value")
131-
self.logger.info("Selected start date is: ", end_date_val)

pages/search_hotels_form.py

-8
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
import logging
21
import allure
32
from allure_commons.types import AttachmentType
43
from locators.locators import SearchHotelsFormLocators
@@ -9,42 +8,35 @@ class SearchHotelsForm:
98

109
def __init__(self, driver):
1110
self.driver = driver
12-
self.logger = logging.getLogger(__name__)
1311

1412
@allure.step("Opening phptravels.net website")
1513
def open_page(self):
16-
self.logger.info("Opening phptravels.net website")
1714
self.driver.get("http://www.phptravels.net/")
1815

1916
@allure.step("Setting destination to '{1}'")
2017
def set_destination(self, destination):
21-
self.logger.info(f"Setting destination: {destination}")
2218
self.driver.find_element(*SearchHotelsFormLocators.destination_inactive).click()
2319
self.driver.find_element(*SearchHotelsFormLocators.destination_input).send_keys(destination)
2420
self.driver.find_element(*SearchHotelsFormLocators.search_match).click()
2521

2622
@allure.step("Setting date range from '{1}' to '{2}'")
2723
def set_date_range(self, check_in, check_out):
28-
self.logger.info(f"Setting date range from {check_in} to {check_out}")
2924
self.driver.find_element(*SearchHotelsFormLocators.checkin_input).click()
3025
self.driver.find_element(*SearchHotelsFormLocators.checkin_input).send_keys(check_in)
3126
self.driver.find_element(*SearchHotelsFormLocators.checkout_input).click()
3227
self.driver.find_element(*SearchHotelsFormLocators.checkout_input).send_keys(check_out)
3328

3429
@allure.step("Setting number of adults to '{1}'")
3530
def set_adults_number(self, adults_num):
36-
self.logger.info(f"Setting number of adults: {adults_num}")
3731
set_travellers_number(self.driver, adults_num, SearchHotelsFormLocators,
3832
["adults_input_value", "adults_add", "adults_sub"])
3933

4034
@allure.step("Setting number of adults to '{1}'")
4135
def set_kids_number(self, kids_num):
42-
self.logger.info(f"Setting number of kids: {kids_num}")
4336
set_travellers_number(self.driver, kids_num, SearchHotelsFormLocators,
4437
["kids_input_value", "kids_add", "kids_sub"])
4538

4639
@allure.step("Performing search")
4740
def search_perform(self):
48-
self.logger.info("Performing search")
4941
self.driver.find_element(*SearchHotelsFormLocators.search_btn).click()
5042
allure.attach(self.driver.get_screenshot_as_png(), name="search_results", attachment_type=AttachmentType.PNG)

pages/search_tours_form.py

-10
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,3 @@
1-
import logging
2-
import pytest
31
import allure
42
from allure_commons.types import AttachmentType
53
from selenium.webdriver.common.by import By
@@ -12,35 +10,29 @@ class SearchToursForm:
1210

1311
def __init__(self, driver):
1412
self.driver = driver
15-
self.logger = logging.getLogger(__name__)
1613

1714
@allure.step("Opening phptravels.net website")
1815
def open_page(self):
19-
self.logger.info("Opening phptravels.net website")
2016
self.driver.get("http://www.phptravels.net/")
2117

2218
@allure.step("Opening Tours tab")
2319
def open_tours_tab(self):
24-
self.logger.info("Opening Tours tab")
2520
self.driver.find_element(*SearchTabsLocators.tours_tab).click()
2621

2722
@allure.step("Setting tour destination: '{1}'")
2823
def set_tour_destination(self, tour_destination):
29-
self.logger.info(f"Setting tour destination to: {tour_destination}")
3024
self.driver.find_element(*SearchToursFormLocators.tour_destination_inactive).click()
3125
self.driver.find_element(*SearchToursFormLocators.tour_destination_active).send_keys(tour_destination)
3226
self.driver.find_element(By.XPATH, f"//div[@class='select2-result-label']"
3327
f"[contains(.,'{tour_destination}')]").click()
3428

3529
@allure.step("Setting tour type: '{1}'")
3630
def set_tour_type(self, tour_type):
37-
self.logger.info(f"Setting tour type to: {tour_type}")
3831
self.driver.find_element(*SearchToursFormLocators.tour_type_dropdown).click()
3932
self.driver.find_element(*SearchToursFormLocators.tour_type_input).send_keys(tour_type, Keys.ENTER)
4033

4134
@allure.step("Setting tour date to '{1}'/'{2}'/'{3}'")
4235
def set_date(self, start_year, start_month, start_day):
43-
self.logger.info(f"Setting tour date to {start_year}/{start_month}/{start_day}")
4436
self.driver.find_element(*SearchToursFormLocators.tour_date).click()
4537
current_year = get_datestamp(self.driver, SearchToursFormLocators, ["datepicker_nav_title_years"])
4638
if current_year != start_year:
@@ -57,12 +49,10 @@ def set_date(self, start_year, start_month, start_day):
5749

5850
@allure.step("Setting number of adults to '{1}'")
5951
def set_adults_number(self, adults_num):
60-
self.logger.info(f"Setting number of adults: {adults_num}")
6152
set_travellers_number(self.driver, adults_num, SearchToursFormLocators,
6253
["adults_input_value", "adults_add", "adults_sub"])
6354

6455
@allure.step("Performing search")
6556
def search_perform(self):
66-
self.logger.info("Performing search")
6757
self.driver.find_element(*SearchToursFormLocators.search_btn).click()
6858
allure.attach(self.driver.get_screenshot_as_png(), name="search_results", attachment_type=AttachmentType.PNG)

0 commit comments

Comments
 (0)