import logging as log import pytest from selenium import webdriver from selenium.webdriver.common.by import By from selenium.webdriver.firefox.options import Options import time def writeInInput(inputElement, text): assert inputElement.is_displayed(), "Le champ texte n'est pas affiché" assert inputElement.is_enabled(), "Le champ texte n'est pas activé" inputElement.clear() inputElement.send_keys(text) #@pytest.mark.skip("skip") def test_login_et_logout_ok_saucedemo(): log.info("login et logout ok") # options = webdriver.FirefoxOptions() # options.add_argument('--headless') # driver = webdriver.Firefox(options=options) driver = webdriver.Chrome() url_sauce_demo="https://www.saucedemo.com/" driver.get(url_sauce_demo) assert driver.current_url == url_sauce_demo, "Nous ne somme pas sur la bonne page" username = driver.find_element(By.ID,"user-name") password = driver.find_element(By.ID,"password") login = driver.find_element(By.ID, "login-button") writeInInput(inputElement=username, text="standard_user") writeInInput(password, text="secret_sauce") login.click() assert driver.current_url == "https://www.saucedemo.com/inventory.html", "Nous ne somme pas sur la bonne page" button_burger= driver.find_element(By.ID,"react-burger-menu-btn") button_burger.click() time.sleep(2) button_logout= driver.find_element(By.ID,"logout_sidebar_link") button_logout.click() driver.quit() #@pytest.mark.skip("skip") def test_about_ok_saucedemo(): log.info("about ok") # options = webdriver.FirefoxOptions() # options.add_argument('--headless') # driver = webdriver.Firefox(options=options) driver = webdriver.Chrome() url_sauce_demo="https://www.saucedemo.com/" driver.get(url_sauce_demo) assert driver.current_url == url_sauce_demo, "Nous ne somme pas sur la bonne page" username = driver.find_element(By.ID,"user-name") password = driver.find_element(By.ID,"password") login = driver.find_element(By.ID, "login-button") writeInInput(inputElement=username, text="standard_user") writeInInput(password, text="secret_sauce") login.click() assert driver.current_url == "https://www.saucedemo.com/inventory.html", "Nous ne somme pas sur la bonne page" button_burger= driver.find_element(By.ID,"react-burger-menu-btn") button_burger.click() time.sleep(2) button_about= driver.find_element(By.ID,"about_sidebar_link") button_about.click() assert driver.current_url == "https://saucelabs.com/", "Nous ne somme pas sur la bonne page" driver.quit() @pytest.mark.skip("skip") def test_footer(): log.info("la présence d'élément footer_copy") # options = webdriver.FirefoxOptions() # options.add_argument('--headless') # driver = webdriver.Firefox(options=options) driver = webdriver.Chrome() driver.get("https://www.saucedemo.com/") assert driver.current_url == "https://www.saucedemo.com/", "Nous ne somme pas sur la bonne page" username = driver.find_element(By.ID,"user-name") password = driver.find_element(By.ID,"password") login = driver.find_element(By.ID, "login-button") writeInInput(inputElement=username, text="standard_user") writeInInput(password, text="secret_sauce") login.click() assert driver.current_url == "https://www.saucedemo.com/inventory.html", "Nous ne somme pas sur la bonne page" assert "Privacy Policy" in driver.find_element(By.CLASS_NAME, "footer"), "La chaine (Privacy Policy) n'est pas dans le titre" driver.quit()