|
@@ -0,0 +1,182 @@
|
|
|
+import logging as log
|
|
|
+import pytest
|
|
|
+import time
|
|
|
+from selenium import webdriver
|
|
|
+from selenium.webdriver.common.by import By
|
|
|
+from selenium.webdriver.firefox.options import Options
|
|
|
+
|
|
|
+
|
|
|
+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("je veux pas le faire")
|
|
|
+def test_loginOK():
|
|
|
+ #serveur
|
|
|
+ log.info("Test du Login avec succès")
|
|
|
+ options = webdriver.FirefoxOptions()
|
|
|
+ options.add_argument('--headless')
|
|
|
+
|
|
|
+ driver = webdriver.Firefox(options=options)
|
|
|
+
|
|
|
+
|
|
|
+ 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"
|
|
|
+
|
|
|
+ driver.quit()
|
|
|
+
|
|
|
+def test_D():
|
|
|
+ pass
|
|
|
+
|
|
|
+def test_Boutenbout():
|
|
|
+ """Commentaire
|
|
|
+ sur
|
|
|
+ plusieurs
|
|
|
+ lignes"""
|
|
|
+
|
|
|
+ #serveur
|
|
|
+ log.info("Test du Login avec succès")
|
|
|
+ options = webdriver.FirefoxOptions()
|
|
|
+ options.add_argument('--headless')
|
|
|
+ driver = webdriver.Firefox(options=options)
|
|
|
+
|
|
|
+ #En local
|
|
|
+ #driver = webdriver.Chrome()
|
|
|
+
|
|
|
+
|
|
|
+ #Se connecter
|
|
|
+ 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()
|
|
|
+
|
|
|
+ #Ajouter 1 item
|
|
|
+ assert driver.current_url == "https://www.saucedemo.com/inventory.html", "Nous ne somme pas sur la bonne page"
|
|
|
+ time.sleep(2)
|
|
|
+
|
|
|
+ item = driver.find_element(By.ID,"item_5_title_link")
|
|
|
+ log.info("l'URL de la page:" +item.text)
|
|
|
+ item.click()
|
|
|
+ time.sleep(5)
|
|
|
+
|
|
|
+ ajoutPanier = driver.find_element(By.ID,"add-to-cart-sauce-labs-fleece-jacket")
|
|
|
+ ajoutPanier.click()
|
|
|
+
|
|
|
+ remove = driver.find_element(By.ID, "remove-sauce-labs-fleece-jacket")
|
|
|
+ assert remove.text == "Remove"
|
|
|
+ time.sleep(3)
|
|
|
+
|
|
|
+ #Cliquer sur panier
|
|
|
+ panier= driver.find_element(By.CLASS_NAME,"shopping_cart_link")
|
|
|
+ panier.click()
|
|
|
+ url_panier = "https://www.saucedemo.com/cart.html"
|
|
|
+ driver.get(url_panier)
|
|
|
+
|
|
|
+ log.info("l'URL de la page:" + driver.current_url)
|
|
|
+ log.info("Titre de la page:"+ driver.title)
|
|
|
+
|
|
|
+ assert driver.current_url == url_panier, "url (" +driver.current_url + "n'est pas égale à"+url_panier
|
|
|
+ time.sleep(2)
|
|
|
+
|
|
|
+
|
|
|
+ #Chekout
|
|
|
+ checkout = driver.find_element(By.ID,"checkout")
|
|
|
+ checkout.click()
|
|
|
+
|
|
|
+ url_checkout= "https://www.saucedemo.com/checkout-step-one.html"
|
|
|
+ driver.get(url_checkout)
|
|
|
+ assert driver.current_url == url_checkout, "url (" +driver.current_url + "n'est pas égale à"+url_checkout
|
|
|
+ time.sleep(3)
|
|
|
+
|
|
|
+
|
|
|
+ #Adresse
|
|
|
+ firstname = driver.find_element(By.ID,"first-name")
|
|
|
+ lastname = driver.find_element(By.ID,"last-name")
|
|
|
+ postalcode = driver.find_element(By.ID,"postal-code")
|
|
|
+ valider = driver.find_element(By.ID, "continue")
|
|
|
+
|
|
|
+ writeInInput(inputElement=firstname, text="standard_user")
|
|
|
+ writeInInput(lastname, text="secret_sauce")
|
|
|
+ writeInInput(inputElement=postalcode, text="Grenoble")
|
|
|
+
|
|
|
+ time.sleep(2)
|
|
|
+ valider.click()
|
|
|
+ time.sleep(2)
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ #Verif info
|
|
|
+ url_checkout2= "https://www.saucedemo.com/checkout-step-two.html"
|
|
|
+ driver.get(url_checkout2)
|
|
|
+ assert driver.current_url == url_checkout2, "url (" +driver.current_url + "n'est pas égale à"+url_checkout2
|
|
|
+
|
|
|
+
|
|
|
+ #Verif item
|
|
|
+ #assert item.tag_name == "Sauce Labs Fleece Jacket"
|
|
|
+ time.sleep(3)
|
|
|
+
|
|
|
+ driver.quit()
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+#Affichage d'un item
|
|
|
+@pytest.mark.skip("je veux pas le faire")
|
|
|
+def test_affichageItem():
|
|
|
+ #serveur
|
|
|
+ #log.info("Test du Login avec succès")
|
|
|
+ #options = webdriver.FirefoxOptions()
|
|
|
+ #options.add_argument('--headless')
|
|
|
+ #driver = webdriver.Firefox(options=options)
|
|
|
+
|
|
|
+ #En local
|
|
|
+ driver = webdriver.Chrome()
|
|
|
+
|
|
|
+ #Se connecter
|
|
|
+ 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()
|
|
|
+
|
|
|
+ #Ajouter 1 item
|
|
|
+ assert driver.current_url == "https://www.saucedemo.com/inventory.html", "Nous ne somme pas sur la bonne page"
|
|
|
+ time.sleep(2)
|
|
|
+
|
|
|
+ item = driver.find_element(By.ID,"item_0_title_link")
|
|
|
+ log.info("l'URL de la page:" +item.text)
|
|
|
+ item.click()
|
|
|
+ time.sleep(5)
|
|
|
+
|
|
|
+ ajoutPanier = driver.find_element(By.ID,"add-to-cart-sauce-labs-bike-light")
|
|
|
+ ajoutPanier.click()
|
|
|
+
|
|
|
+
|
|
|
+ #Faire remove de l'item
|
|
|
+ remove = driver.find_element(By.ID, "remove-sauce-labs-fleece-jacket")
|
|
|
+ assert remove.text == "Remove"
|
|
|
+ time.sleep(3)
|
|
|
+
|
|
|
+ driver.quit()
|