123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186 |
- 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)
- def element_visible_actif(elem):
- assert elem.is_displayed()
- assert elem.is_enabled()
- # @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")
- element_visible_actif(button_burger)
- button_burger.click()
- time.sleep(2)
- button_logout= driver.find_element(By.ID,"logout_sidebar_link")
- element_visible_actif(button_logout)
- 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")
- element_visible_actif(button_burger)
- button_burger.click()
- time.sleep(2)
- button_about= driver.find_element(By.ID,"about_sidebar_link")
- element_visible_actif(button_about)
- 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_copy():
- 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").text, "Privacy Policy n'est pas dans le footer"
- driver.quit()
- # @pytest.mark.skip("skip")
- def test_footer_twitter():
- log.info("la présence d'élément footer_twitter")
- 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"
- twitter_lien = driver.find_element(By.LINK_TEXT, "Twitter")
- twitter_lien.click()
- time.sleep(2)
- #assert driver.current_url == "https://twitter.com/saucelabs", "Nous ne somme pas sur la bonne page"
- driver.quit()
- # @pytest.mark.skip("skip")
- def test_footer_facebook():
- log.info("la présence d'élément footer_facebook")
- 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"
- twitter_lien = driver.find_element(By.LINK_TEXT, "Facebook")
- twitter_lien.click()
- time.sleep(2)
- #assert driver.current_url == "https://www.facebook.com/saucelabs", "Nous ne somme pas sur la bonne page"
- driver.quit()
- # @pytest.mark.skip("skip")
- def test_footer_linkedin():
- log.info("la présence d'élément footer_linkedin")
- 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"
- twitter_lien = driver.find_element(By.LINK_TEXT, "LinkedIn")
- twitter_lien.click()
- time.sleep(3)
- #assert driver.current_url == "https://www.linkedin.com/company/sauce-labs/", "Nous ne somme pas sur la bonne page"
- driver.quit()
|