Ejemplo n.º 1
0
    def __init__(self, driver):
        with allure.step("Finding components of the initial page"):
            self.driver = driver
            webdriver_waiter = WebDriverWait(self.driver.instance, integers.default_timeout)

            self.body = webdriver_waiter.until(
                EC.presence_of_element_located((
                    By.ID, strings.general_id_body)),
                strings.id_is_not_present_timeout_message.format(strings.main_page_id_body))

            self.form_login = WebDriverWait(self.body, integers.default_timeout).until(
                EC.visibility_of_element_located((By.TAG_NAME, strings.html_tag_form)),
                strings.tag_timeout_message.format(strings.general_id_body, strings.html_tag_form))
            self.input_username = WebDriverWait(self.form_login, integers.default_timeout).until(
                EC.visibility_of_element_located((By.NAME, strings.initial_page_name_username)),
                strings.name_timeout_message.format(strings.html_tag_form,
                                                                 strings.initial_page_name_username))
            self.input_password = WebDriverWait(self.form_login, integers.default_timeout).until(
                EC.visibility_of_element_located((By.NAME, strings.initial_page_name_password)),
                strings.name_timeout_message.format(strings.html_tag_form,
                                                                 strings.initial_page_name_password))

            self.form_submit = BasePage.find_button(self.form_login, (By.CSS_SELECTOR,
                                                                      strings.initial_page_css_selector_form_submit))

            self.signup = BasePage.find_button(self.body, (By.CSS_SELECTOR, strings.initial_page_css_selector_signup))
            self.login = BasePage.find_button(self.body, (By.CSS_SELECTOR, strings.initial_page_css_selector_login))

            self.nav_footer = WebDriverWait(self.body, integers.default_timeout).until(
                EC.presence_of_element_located((By.TAG_NAME, strings.html_tag_nav)),
                strings.tag_timeout_message.format(strings.general_id_body, strings.html_tag_nav))
Ejemplo n.º 2
0
 def __init__(self, driver):
     with allure.step("Finding components of the main page"):
         self.driver = driver
         webdriver_waiter = WebDriverWait(self.driver.instance,
                                          integers.default_timeout)
         self.body = webdriver_waiter.until(
             EC.presence_of_element_located(
                 (By.ID, strings.main_page_id_body)),
             strings.id_is_not_present_timeout_message.format(
                 strings.main_page_id_body))
         self.image = WebDriverWait(
             self.body, integers.default_timeout).until(
                 EC.presence_of_element_located(
                     (By.TAG_NAME, strings.main_page_tag_img)),
                 strings.main_page_tag_timeout_message.format(
                     strings.main_page_id_body, strings.main_page_tag_img))
         self.form_searching = webdriver_waiter.until(
             EC.presence_of_element_located(
                 (By.ID, strings.main_page_id_searchform)),
             strings.id_is_not_present_timeout_message.format(
                 strings.main_page_id_searchform))
         self.input_searching = self.find_input_searching()
         self.div_main_buttons = webdriver_waiter.until(
             EC.presence_of_element_located(
                 (By.CLASS_NAME, strings.main_page_class_FPdoLc)),
             strings.class_is_not_present_timeout_message.format(
                 strings.main_page_class_FPdoLc))
         self.searching_button = BasePage.find_button(
             self.div_main_buttons, (By.NAME, strings.main_page_name_btnK))
         self.luck_button = BasePage.find_button(
             self.div_main_buttons, (By.NAME, strings.main_page_name_btnI))
         self.drop_down_element = None
Ejemplo n.º 3
0
    def __init__(self, driver):
        with allure.step("Finding components of the main page"):
            self.driver = driver
            webdriver_waiter = WebDriverWait(self.driver.instance,
                                             integers.default_timeout)
            self.body = webdriver_waiter.until(
                EC.presence_of_element_located(
                    (By.ID, strings.general_id_body)),
                strings.id_is_not_present_timeout_message.format(
                    strings.general_id_body))

            self.header = WebDriverWait(self.body,
                                        integers.default_timeout).until(
                                            EC.visibility_of_element_located(
                                                (By.TAG_NAME,
                                                 strings.html_tag_header)),
                                            strings.tag_timeout_message.format(
                                                strings.general_id_body,
                                                strings.html_tag_header))
            self.home_btn = BasePage.find_button(
                self.header,
                (By.CSS_SELECTOR, strings.main_page_css_selector_home_btn))
            self.new_tweet_btn = BasePage.find_button(
                self.header, (By.CSS_SELECTOR,
                              strings.main_page_css_selector_new_tweet_btn))

            self.main = WebDriverWait(
                self.body, integers.default_timeout).until(
                    EC.visibility_of_element_located(
                        (By.TAG_NAME, strings.html_tag_main)),
                    strings.tag_timeout_message.format(strings.general_id_body,
                                                       strings.html_tag_main))
            self.primary_column = WebDriverWait(
                self.main, integers.default_timeout).until(
                    EC.visibility_of_element_located(
                        (By.CSS_SELECTOR,
                         strings.main_page_css_selector_primary_column)),
                    strings.css_selector_timeout_message.format(
                        strings.html_tag_main,
                        strings.main_page_css_selector_primary_column))
            self.sidebar_column = WebDriverWait(
                self.main, integers.default_timeout).until(
                    EC.visibility_of_element_located(
                        (By.CSS_SELECTOR,
                         strings.main_page_css_selector_sidebar_column)),
                    strings.css_selector_timeout_message.format(
                        strings.html_tag_main,
                        strings.main_page_css_selector_sidebar_column))
            self.modal_form_new_tweet = None
            self.draft_editor = None
            self.draft_editor_content = None
            self.toolbar = None
            self.tweet_btn = None
            self.own_tweets = []
Ejemplo n.º 4
0
class TestScreenShot(object):

    driver = webdriver.Chrome()
    driver.maximize_window()
    driver.implicitly_wait(1)
    basepage = BasePage(driver)

    def getScreenShot(self):
        self.basepage.open_url("https://www.baidu.com")
        time.sleep(1)
        self.basepage.take_screenshot()
        self.basepage.quit_browser()
Ejemplo n.º 5
0
 def searching(self, string_query="TEST"):
     with allure.step("Define a query: {}".format(string_query)):
         self.input_searching.send_keys(string_query)
     with allure.step("Verify a value of input"):
         current_value = self.input_searching.get_attribute(
             strings.main_page_attribute_value)
         assert current_value == string_query, strings.main_page_difference_in_values_assert_message.\
             format(string_query, current_value)
     with allure.step("Wait a drop-down list"):
         self.drop_down_element = WebDriverWait(
             self.form_searching, integers.default_timeout).until(
                 EC.visibility_of_element_located(
                     (By.CLASS_NAME, strings.main_page_class_UUbT9)),
                 strings.
                 main_page_element_with_class_is_not_visible_assert_message.
                 format(strings.main_page_class_UUbT9))
         with allure.step("Reassigning of the search's button"):
             self.searching_button = BasePage.find_button(
                 self.drop_down_element,
                 (By.NAME, strings.main_page_name_btnK))
     with allure.step("Click on the 'Search' button"):
         self.searching_button.click()
Ejemplo n.º 6
0
 def validate_buttons_of_searching_and_luck(self):
     for temp_button in [self.searching_button, self.luck_button]:
         BasePage.validate_element_is_displayed_and_enabled(
             self, temp_button)
Ejemplo n.º 7
0
 def validate_buttons(self):
     for temp_button in [self.form_submit, self.signup, self.login]:
         BasePage.validate_element_is_displayed_and_enabled(self, temp_button)
Ejemplo n.º 8
0
 def validate_button(self):
     BasePage.validate_element_is_displayed_and_enabled(
         self, self.form_submit)
Ejemplo n.º 9
0
 def validate_buttons(self):
     for temp_button in [self.home_btn, self.new_tweet_btn]:
         BasePage.validate_element_is_displayed_and_enabled(
             self, temp_button)