def test_click_surveyMenu(self): login_page = LoginPage(self.driver) dashboard_page = DashboardPage(self.driver) login_page.username_text_element = "*****@*****.**" login_page.password_text_element = "123123" login_page.select_admin_role() login_page.click_login_button() dashboard_page.open_survey_menu()
def test_login(self): driver = self.driver driver.get(utils.URL) login = LoginPage(driver) login.enter_username(utils.USERNAME) login.enter_password(utils.PASSWORD) login.click_login_button()
def test_login(self, username, password): """Sign in to the website""" driver = self.driver driver.get(utils.URL) login = LoginPage(driver) homepage = HomePage(driver) login_page_asserts = LoginAsserts(driver) time.sleep(3) login_page_asserts.panel_header_check() login_page_asserts.assert_login_page_contains_logo_image() login_page_asserts.assert_forgot_password_link_displayed() login.login_crm_system(username, password) login.click_login_button() homepage.check_dashboard_visibility()
def test_login_valid(self): login_page = LoginPage(self.driver) login_page.username_text_element = GlobalVariable.valid_email login_page.password_text_element = GlobalVariable.valid_password login_page.select_admin_role() login_page.click_login_button()
def standard_test_setup_teardown(request): global driver browser = request.config.getoption("--browser") if browser == "chrome": from selenium.webdriver.chrome.options import Options ch = Service(ChromeDriverManager().install()) chrome_options = Options() chrome_options.add_argument('--headless') driver = webdriver.Chrome(service=ch, options=chrome_options) logger.info("Chrome tests run has started") elif browser == "firefox": from selenium.webdriver.firefox.options import Options ff = Service(GeckoDriverManager().install()) ff_options = Options() ff_options.add_argument('--headless') driver = webdriver.Firefox(service=ff, options=ff_options) logger.info("Firefox tests run has started") elif browser == "edge": from selenium.webdriver.edge.options import Options ed = Service(EdgeChromiumDriverManager().install()) edge_options = Options() edge_options.add_argument('--headless') driver = webdriver.Edge(service=ed, options=edge_options) logger.info("Edge tests run has started") else: logger.info( "Such browser is not supported, please contact QA Automation Team to learn more about the issue" ) driver.get(utils.URL) login_page = LoginPage(driver) login_page_asserts = LoginAsserts(driver) logger.info("Website has been opened") assert driver.title == 'OrangeHRM', f"ERROR! Actual title => {driver.title}" # Check if panel header, logo image and 'forgot password' link are present login_page_asserts.panel_header_check() login_page_asserts.assert_login_page_contains_logo_image() login_page_asserts.assert_forgot_password_link_displayed() login_page.login_crm_system(utils.USERNAME, utils.PASSWORD) login_page.click_login_button() logger.info("User logged in") driver.implicitly_wait(10) driver.maximize_window() request.cls.driver = driver yield try: homepage = HomePage(driver) login_page_asserts = LoginAsserts(driver) homepage.click_welcome_button() homepage.click_logout_button() time.sleep(3) login_page_asserts.panel_header_check() logger.info("User has logged out and was redirected to Login Page") except AttributeError as error: logger.error("Locator issue") raise error except selenium.common.exceptions.NoSuchElementException as error: logger.error("Locator was not shown or found by driver") raise error else: logger.info("Teardown point reached") driver.close() driver.quit() logger.info("Test execution finished")