Browse Source

BoutEnBout

Gogs 1 year ago
parent
commit
0793f9620e
2 changed files with 66 additions and 12 deletions
  1. 5 5
      test_sauceDemolog.py
  2. 61 7
      test_saucedemo.py

+ 5 - 5
test_sauceDemolog.py

@@ -47,13 +47,13 @@ def test_Boutenbout():
         lignes"""
         
         #serveur
-        #log.info("Test du Login avec succès")
-        #options = webdriver.FirefoxOptions()
-        #options.add_argument('--headless')
-        #driver = webdriver.Firefox(options=options)
+        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()
+        #driver = webdriver.Chrome()
 
 
         #Se connecter

+ 61 - 7
test_saucedemo.py

@@ -5,13 +5,19 @@ from selenium.webdriver.common.by import By
 from selenium.webdriver.firefox.options import Options
 import time
 
+#@pytest.mark.skip("je veux pas le faire")
+@pytest.mark.skip("je veux pas le faire")
+def element_visible_actif(element):
+    assert element.is_displayed()
+    assert element.is_enabled()
 
-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 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")
@@ -37,7 +43,7 @@ def test_loginOK():
 def test_D():
     pass 
 
-@pytest.mark.skip("je veux pas le faire")
+#@pytest.mark.skip("je veux pas le faire")
 def test_login_KO_saucedemo():
     #driver = webdriver.Chrome()
     log.info("Test du Login avec succès")
@@ -45,6 +51,7 @@ def test_login_KO_saucedemo():
     options.add_argument('--headless')
 
     driver = webdriver.Firefox(options=options)
+
     url_sauce_demo = "https://www.saucedemo.com/"
     titre_page = "Swag Labs"
     driver.get(url_sauce_demo)
@@ -80,5 +87,52 @@ def test_login_KO_saucedemo():
     assert message_erreur.text ==  "Epic sadface: Username and password do not match any user in this service"
 
 
-    time.sleep(0)
+    time.sleep(3)
     driver.quit()
+
+@pytest.mark.skip("JE VEUX PAS LE FAIRE")
+def test_login_OK_logout_saucedemo():
+
+    #driver = webdriver.Chrome()
+    log.info("Test du Login avec succès")
+    options = webdriver.FirefoxOptions()
+    options.add_argument('--headless')
+
+    driver = webdriver.Firefox(options=options)
+    
+    driver.implicitly_wait(15)
+    #wait = WebDriverWait(driver, 15)
+    url_sauce_demo="https://www.saucedemo.com/"
+    titre_page="Swag Labs"
+    driver.get(url_sauce_demo)
+    log.info("Le titre de la page" + driver.title)
+    log.info("L'URL de la page " + driver.current_url)
+    assert driver.current_url==url_sauce_demo, "L'url de la page ouverte ("+ driver.current_url+") n'est pas égal à "+url_sauce_demo
+    assert driver.title==titre_page, "Le titre de la page ("+driver.title+") n'est pas égal à " + titre_page
+    champ_username = driver.find_element(By.XPATH,'//*[@id="user-name"]')
+    log.info(champ_username)
+    champ_username.send_keys("standard_user")
+    log.info("texte du champ username"+champ_username.text)
+    log.info("L'attribut du champ username est "+ champ_username.get_attribute("placeholder") )
+    assert champ_username.get_attribute("value")=="standard_user"
+    champ_mdp = driver.find_element(By.CSS_SELECTOR,'#password')
+    champ_mdp.send_keys("secret_sauce")
+    button_login = driver.find_element(By.ID,"login-button")
+    element_visible_actif(button_login)
+    button_login.click()
+    assert driver.current_url=="https://www.saucedemo.com/inventory.html", "l'url de la page ouverte ("+ driver.current_url + ") n'est pas égal à https://www.saucedemo.com/inventory.html"
+   
+    button_burger= driver.find_element(By.ID,"react-burger-menu-btn")
+    element_visible_actif(button_burger)
+    time.sleep(5)
+    button_burger.click()
+
+
+    button_logout= driver.find_element(By.ID,"logout_sidebar_link")
+
+    time.sleep(5)
+    button_logout.click()
+    assert driver.current_url==url_sauce_demo, "L'url de la page ouverte ("+ driver.current_url+") n'est pas égal à "+url_sauce_demo
+
+    time.sleep(5)
+    driver.quit()