def test_e2e(self): log = self.getLog_obj() home_page = HomePage(self.driver) checkout_page = home_page.click_shop_btn() log.info("click shop Btn") checkout_page.add_blackbery_in_basket() log.info("Select item") checkout_page.click_checkout() log.info("click checkout") item = "Blackberry" self.wait_link_presence(item, 9) quantity = checkout_page.get_item_quantity() assert 1 == int(quantity) log.info("pass verification") confirm_page = checkout_page.check_after_verify() link = "Italy" confirm_page.find_country("ita") self.wait_link_presence(link, 9) confirm_page.select_country() log.info("select country for delivery") confirm_page.terms_and_conditions() confirm_page.press_purchase() log.info("accept term&conditions And finalize") assert "Success" in confirm_page.get_the_msg()
def test_e2e(self): log=self.getLogger() homepage = HomePage(self.driver) checkoutpage = homepage.shopItems() log.info(checkoutpage,"some") #checkoutpage = CheckoutPage(self.driver) cards = checkoutpage.getCardTitles() for card in cards: product_name = card.text if product_name == "Blackberry": checkoutpage.getCardTitles().click() checkoutpage.getChekout().click() log.info(checkoutpage,"soem one") checkoutpage1 = CheckoutPage1(self.driver) checkoutpage1.getCheckout1().click() self.driver.find_element_by_id("country").send_keys("ind") self.verifyLinkPresence("India") # [xpath='1'] self.driver.find_element_by_xpath("//a[contains(text(),'India')]").click() self.driver.find_element_by_xpath("//div[@class='checkbox checkbox-primary']").click() self.driver.find_element_by_css_selector("[class='btn btn-success btn-lg']").click() print(self.driver.find_element_by_class_name("alert-success").text) self.driver.get_screenshot_as_file("screen.png")
def test_load_home_page(self, setup): driver = setup['driver'] browser = setup['browser'] testcase_name = inspect.stack()[0][3] ###############initialize constants############### driver.get(Urls.home_page) home_page = HomePage(driver, browser, testcase_name) home_page.load_home_page()
def test_e2e(self): log = self.get_logger() # First page - home page home_page = HomePage(self.driver) home_page.shop_item() log.info("getting all the card items") # Second page - checkout page checkout_page: CheckoutPage = CheckoutPage(self.driver) products = checkout_page.get_products() for product in products: product_name = product.find_element_by_xpath("div/h4/a").text log.info(product_name) if product_name == "iphone X": checkout_page.add_product().click() checkout_page.checkout() # Third page - confirmation page selected_product = self.driver.find_element_by_xpath( "//div[@class='media-body']/h4/a").text assert selected_product == "iphone X" # self.driver.find_element_by_class_name("btn-success").click() final_checkout = ConfirmPage(self.driver) final_checkout.get_checkout().click() log.info("Entering country name as uni") self.driver.find_element_by_id("country").send_keys("uni") self.verify_country_name("United States of America") countries = final_checkout.select_country() for country in countries: print(country.text) if country.text == "United States of America": country.click() break final_checkout.click_checkbox().click() final_checkout.purchase_button() alert_success = self.driver.find_element_by_class_name( "alert-success").text log.info("Text received from the application is" + alert_success) assert "Success! Thank you!" in alert_success print(alert_success) print("Second change") print("Third change") print("Forth change") print("Fifth change") print("Last change before merge") self.driver.get_screenshot_as_file("e2e_final.jpg")
def test_searchbar(self,driver): c = Common(driver) s = Search_Item(driver) h = HomePage(driver) h.navigate_to_homepage() c.driver_wait(wait_time) s.item_search() s.add_item() s.proceed_to_checkout() s.shopping_cart_checkout()
def test_click_background_AML_screening_link(self, setup): driver = setup['driver'] browser = setup['browser'] testcase_name = inspect.stack()[0][3] ###############initialize constants############### driver.get(Urls.home_page) home_page = HomePage(driver, browser, testcase_name) home_page.click_background_AML_screening_link() time.sleep(3) assert WebDriverWait(driver, 10).until(EC.url_contains(Urls.aml))
def test_about_page_components(self): home_page = HomePage(self.driver) home_page.click_about_me_link() about_page = AboutPage(self.driver) about_page.validate_title_is_present() about_page.validate_icon_is_present() about_page.validate_menu_options_are_present() about_page.validate_social_media_links() about_page.validate_about_me_header() about_page.validate_about_me_post()
def test02_unsuccessful_login_test(self): home = HomePage(self.driver) home.given_that_i_am_on_home_page() login_modal = home.when_i_click_on_enter_button() login_modal.then_i_should_see_a_modal_asking_for_my_email() login_modal.when_i_fill_the_email('*****@*****.**') login_modal.and_i_click_on_next_button() login_modal.then_i_should_see_a_field_to_enter_my_password() login_modal.when_i_type_the_password('SENHA') login_modal.and_i_click_on_login_button() login_modal.then_i_should_see_an_error_message()
def test_click_facial_biometric_authentication_link(self, setup): driver = setup['driver'] browser = setup['browser'] testcase_name = inspect.stack()[0][3] ###############initialize constants############### driver.get(Urls.home_page) home_page = HomePage(driver, browser, testcase_name) home_page.click_facial_biometric_authentication_link() time.sleep(3) assert WebDriverWait(driver, 10).until( EC.url_contains(Urls.biometric_authentication))
def test_click_video_interview_kYC(self, setup): driver = setup['driver'] browser = setup['browser'] testcase_name = inspect.stack()[0][3] ###############initialize constants############### driver.get(Urls.home_page) home_page = HomePage(driver, browser, testcase_name) home_page.click_video_interview_kYC() time.sleep(3) assert WebDriverWait(driver, 10).until(EC.url_contains(Urls.video_kyc))
def test_post_page_components(self): home_page = HomePage(self.driver) home_page.click_first_post() post_page = PostPage(self.driver) post_page.validate_title_is_present() post_page.validate_icon_is_present() post_page.validate_menu_options_are_present() post_page.validate_social_media_links() post_page.validate_post_image() post_page.validate_published_date() post_page.validate_share_buttons() post_page.validate_comment_section()
def test01_successful_login_test(self): home = HomePage(self.driver) home.given_that_i_am_on_home_page() login_modal = home.when_i_click_on_enter_button() login_modal.then_i_should_see_a_modal_asking_for_my_email() login_modal.when_i_fill_the_email('*****@*****.**') login_modal.and_i_click_on_next_button() login_modal.then_i_should_see_a_field_to_enter_my_password() login_modal.when_i_type_the_password('WLS2020qa') member_area = login_modal.and_i_click_on_login_button() member_area.then_i_should_see_the_member_area_page() member_area.and_my_name_should_be_on_the_page_header( 'Thiago Secomandi Galdino')
def test_click_know_your_business_KYB_link(self, setup): driver = setup['driver'] browser = setup['browser'] testcase_name = inspect.stack()[0][3] ###############initialize constants############### driver.get(Urls.home_page) home_page = HomePage(driver, browser, testcase_name) home_page.click_know_your_business_KYB_link() time.sleep(3) assert WebDriverWait(driver, 10).until( EC.url_contains(Urls.know_your_business))
def test_click_get_in_touch_button(self, setup): driver = setup['driver'] browser = setup['browser'] testcase_name = inspect.stack()[0][3] ###############initialize constants############### driver.get(Urls.home_page) home_page = HomePage(driver, browser, testcase_name) home_page.click_get_in_touch_button() time.sleep(3) WebDriverWait(driver, 10).until(EC.number_of_windows_to_be(2)) driver.switch_to.window(driver.window_handles[1]) assert Urls.contact_us in driver.current_url
def test_click_background_screening_against_1700_watchlists_link( self, setup): driver = setup['driver'] browser = setup['browser'] testcase_name = inspect.stack()[0][3] ###############initialize constants############### driver.get(Urls.home_page) home_page = HomePage(driver, browser, testcase_name) home_page.click_background_screening_against_1700_watchlists_link() time.sleep(3) WebDriverWait(driver, 10).until(EC.number_of_windows_to_be(2)) driver.switch_to.window(driver.window_handles[1]) assert Urls.download_aml_dataset_report in driver.current_url
def test_shipping_page(self, driver): c = Common(driver) s = SearchItem(driver) h = HomePage(driver) l = Login(driver) h.navigate_to_homepage() c.driver_wait(wait_time) s.item_search() s.add_item() s.proceed_to_checkout() s.shopping_cart_checkout() s.address_page_checkout() s.shipping_page_checkout() s.verify_product_name() s.confirm_order() s.order_status()
def load_beep_app(selenium, base_url): import pytest if pytest.globalDict['env']['app'] is False: HomePage(selenium, base_url).open() if pytest.globalDict['env']['app'] is True: webview = selenium.contexts[1] selenium.switch_to.context(webview)
def select_domain(self, country, lang='English'): self.accept_cookies() self.country_selector.click() # Select region if country in ['USA', 'Rest of the world']: country = 'U.S.A.' americas = WebDriverWait(self.web_driver, 10). \ until(expected_conditions.presence_of_element_located((By.CSS_SELECTOR, '.region-1'))) americas.click() elif country in [ 'Germany', 'United Kingdom', 'Ireland', 'Sweden', 'Denmark' ]: europe = WebDriverWait(self.web_driver, 10). \ until(expected_conditions.presence_of_element_located((By.CSS_SELECTOR, '.region-2'))) europe.click() elif country in [ 'Saudi Arabia', 'Oman', 'Bahrain', 'United Arab Emirates', 'Kuwait', 'Lebanon', 'Jordan', 'Iran, Islamic Republic Of' ]: middle_east = WebDriverWait(self.web_driver, 10). \ until(expected_conditions.presence_of_element_located((By.CSS_SELECTOR, '.region-3'))) middle_east.click() elif country in [ 'Nigeria', 'South Africa', 'Kenya', 'Egypt', 'Ghana', 'Zambia' ]: africa = WebDriverWait(self.web_driver, 10). \ until(expected_conditions.presence_of_element_located((By.CSS_SELECTOR, '.region-4'))) africa.click() elif country in ['India']: asia = WebDriverWait(self.web_driver, 10). \ until(expected_conditions.presence_of_element_located((By.CSS_SELECTOR, '.region-5'))) asia.click() else: pass # Transform lang if lang == 'Arabic': lang = 'العربية' if country == 'Germany': lang = 'Deutsch' elif country == 'Sweden': lang = 'Svenska' elif country == 'Denmark': lang = 'Dansk' # Select country and language Select(WebDriverWait(self.web_driver, 15). \ until(expected_conditions.presence_of_element_located((By.XPATH,"//div[@class='points-of-sale-nav-country-select-wrapper']//select"))))\ .select_by_visible_text(country) Select(WebDriverWait(self.web_driver, 15). \ until(expected_conditions.presence_of_element_located((By.XPATH,"//div[@class='points-of-sale-nav-language-select-wrapper']//select"))))\ .select_by_visible_text(lang) # Confirm button confirm_button = self.web_driver.find_element_by_css_selector( '.points-of-sale-nav button') confirm_button.click() # Country picker contry_picker = self.web_driver.find_element_by_css_selector( '.country-picker a') contry_picker.click() return HomePage(self.web_driver)
def submit_login(self): """ :rtype self: HomePage Return a new page object representing the destination. """ self._find_element(self.__LOGIN).click() print('Press log in button.') return HomePage(self.__driver)
def test_submission(self, get_data): log = self.get_logger() homepage = HomePage(self.driver) log.info("firstname is " + get_data["firstname"]) homepage.get_name().send_keys(get_data["firstname"]) log.info("gender is " + get_data["gender"]) self.selectOptionByText(homepage.get_gender(), get_data["gender"]) homepage.submit_form().click() alert_text = homepage.get_success_message().text assert ("Success" in alert_text) self.driver.refresh()
def test_e2e(self, getData): log = self.getLogger() home_page = HomePage(self.driver) checkout_page = home_page.shopitems() product_name = checkout_page.product() i = -1 for product in product_name: i = i + 1 print(i) pd_name = product.text log.info(pd_name) print(pd_name) if pd_name == getData["ProductName"]: self.scrolldown() checkout_page.Addcartbutton()[i].click() # self.expilicitwait("India") self.scrollup() assert pd_name == 'Blackberry' self.screenshot(getData["Screenshot"])
def test_homepage(self, load_data): log = self.getLog_obj() home_page = HomePage(self.driver) home_page.get_name_input().send_keys(load_data["first_name"]) log.info(load_data["first_name"]) home_page.get_email().send_keys(load_data["email"]) log.info(load_data["email"]) home_page.check_box().click() log.info("tick the checkbox") self.select_option_by_text(home_page.drop_down_locator(), load_data["gender"]) log.info(load_data["gender"]) home_page.submit_data().click() print(home_page.get_message()) log.info("submit the Data and print the message! ") self.driver.refresh()
def login_with(self, username, password): self.click_on_element(By.CLASS_NAME, self.SIGN_IN_LOC) self.enter_text(By.ID, self.USER_LOC, username) self.enter_text(By.ID, self.PASSWORD_LOC, password) self.click_on_element(By.NAME, self.LOGIN_LOCATOR) return HomePage(self.driver)
import sys import pytest from page_objects.home_page import HomePage hp = HomePage() class TestHomePage: @pytest.fixture def initial_setup(self): test_data = hp.get_section_data_from_ini_file('common.ini', 'common') hp.launch_browser_app(test_data['browser_name'], test_data['url']) actual_title = hp.get_page_details('title') hp.compare_result(actual_title, test_data['expected_title']) def test_verify_tab_count(self, initial_setup): this_function_name = sys._getframe().f_code.co_name test_data = hp.get_section_data_from_ini_file('home_data.ini', this_function_name) actual_tab_count = hp.get_tab_count() hp.compare_result(actual_tab_count, int(test_data['expected_tab_count'])) hp.close_browser() def test_verify_tab_text(self, initial_setup): this_function_name = sys._getframe().f_code.co_name test_data = hp.get_section_data_from_ini_file('home_data.ini', this_function_name) actual_tab_name = hp.get_tab_text() hp.compare_result(actual_tab_name, test_data['expected_tab_name'].split(','))
def test_formSubmission(self, getData): log = self.getLogger() homepage = HomePage(self.driver) log.info("this is the first name", getData["firstname"]) homepage.getName().send_keys(getData["firstname"]) homepage.getEmail().send_keys(getData["lastname"]) homepage.getCheckBox().click() self.selectOptionByText(homepage.getGender(), getData["gender"]) homepage.submitForm().click() alertText = homepage.getSuccessMessage().text assert ("Success" in alertText) self.driver.refresh()
def go_to_home_page(self): self.home_button.click() return HomePage(self.web_driver)
def test_sale(self, load_data): loger = self.logger_object() home_page = HomePage(self.driver) try: home_page.refuse_notifications() except: print("No notification") home_page.accept_cookiies() loger.info("Stop notification and accept cookies!") home_page.search_items(load_data["product"]) home_page.click_search() loger.info("Search items") item_page = home_page.choose_item() sleep(2) item_page.add_item() loger.info("Select item and add it to the Basket!") item_page.continue_shoping() item_page.hover_menu() item_page.move_to_section() action_camera = item_page.select_link() loger.info("Open other products!") num = action_camera.displayed_quantity() containers = action_camera.count_items() loger.info("compare displayed quantity and items on the page") assert containers == num basket = Basket(self.driver) loger.info("Open the Basket and get the quantity of the items!") basket.open_basket() quantity = basket.get_quantity() self.driver.get_screenshot_as_file( "/home/georgi/PycharmProjects/forSales/reports/basket.png") loger.info( "compare received quantity with desired and close the Basket!") assert quantity == 1 basket.close_basket()
def test_home_page_components(self): home_page = HomePage(self.driver) home_page.validate_title_is_present() home_page.validate_icon_is_present() home_page.validate_menu_options_are_present() home_page.validate_posts_are_visible() home_page.validate_social_media_links()
from common.webdriver_factory import create_driver_instance from page_objects.home_page import HomePage driver = create_driver_instance('chrome') home = HomePage(driver) home.open() home.wait_until_loaded() home.click_logo() home.wait_until_loaded() job_page = home.search_for_a_job() job_page.wait_until_loaded() job_page.search('Software Engineer', 'Zapopan, Jalisco') driver.quit()
def see_app_logo(selenium, base_url): HomePage(selenium, base_url).validate_element_is_visible('_logo')