Bläddra i källkod

Merge branch 'master' of http://178.32.216.95:3000/aahmad/groupe3

Gogs 1 år sedan
förälder
incheckning
f37b44a01c
1 ändrade filer med 70 tillägg och 20 borttagningar
  1. 70 20
      test_sauce_demo_class.py

+ 70 - 20
test_sauce_demo_class.py

@@ -15,9 +15,7 @@ import os
 
 
 class TestSauceDemo:
-
-##### METHODES PYTEST
-
+    ##### METHODES PYTEST
 
     def setup_method(self, method):
         log.info("Methode de SETUP AVANT CHAQUE TEST")
@@ -38,9 +36,7 @@ class TestSauceDemo:
         log.info("Methode de TEARDOWN APRES CHAQUE TEST")
         self.driver.quit()
 
-
-
-##### METHODES DIVERS
+    ##### METHODES DIVERS
     def is_windows(self):
         # oups
         res = False
@@ -62,7 +58,7 @@ class TestSauceDemo:
         writeInInput(inputElement=username, text="standard_user")
         writeInInput(password, text="secret_sauce")
         login.click()
-    
+
     def login_custum(self, user, pwd):
         username = self.driver.find_element(By.ID, "user-name")
         password = self.driver.find_element(By.ID, "password")
@@ -78,8 +74,6 @@ class TestSauceDemo:
         logout = self.driver.find_element(By.ID, "logout_sidebar_link")
         logout.click()
 
-
-
     def add_item(self, item):
         self.driver.find_element(By.ID, f"add-to-cart-sauce-labs-{item}").click()
         return item
@@ -108,8 +102,6 @@ class TestSauceDemo:
 
     ##### TEST MANEL
 
-
-
     #@pytest.mark.skip("")
     def test_login_bad_username(self):
         self.login_custum("test", "secret_sauce")
@@ -134,9 +126,60 @@ class TestSauceDemo:
             == "Epic sadface: Username and password do not match any user in this service"
         ), "le message est erroné"
 
-    ##### TEST MATTHIEU
+    
+    def test_login_bad_username_and_bad_passwrd(self):
+        self.login_custum("test", "test")
 
-    #@pytest.mark.skip("")
+        erreur_message = self.driver.find_element(By.CSS_SELECTOR,'[data-test=error]')
+
+        assert erreur_message.is_displayed(), "Pas de message d\'erreur "
+        assert erreur_message.text == "Epic sadface: Username and password do not match any user in this service", "le message est erroné"
+
+    
+    def test_login_username_vide(self):
+        self.login_custum("", "secret_sauce")
+
+        erreur_message = self.driver.find_element(By.CSS_SELECTOR,'#login_button_container > div > form > div.error-message-container.error > h3')
+
+        assert erreur_message.is_displayed(), "Pas de message d\'erreur "
+        assert erreur_message.text == "Epic sadface: Username is required", "le message est erroné"
+
+    def test_login_paswrd_vide(self):
+        self.login_custum("standard_user", "")
+
+        erreur_message = self.driver.find_element(By.CSS_SELECTOR,'#login_button_container > div > form > div.error-message-container.error > h3')
+
+        assert erreur_message.is_displayed(), "Pas de message d\'erreur "
+        assert erreur_message.text == "Epic sadface: Password is required", "le message est erroné"
+
+    def test_login_username_and_pswerd_vide(self):
+        self.login_custum("", "")
+
+        erreur_message = self.driver.find_element(By.CSS_SELECTOR,'#login_button_container > div > form > div.error-message-container.error')
+
+        assert erreur_message.is_displayed(), "Pas de message d\'erreur "
+        assert erreur_message.text == "Epic sadface: Username is required", "le message est erroné"
+
+    
+
+
+    
+        
+
+
+    
+
+
+    
+        
+
+##### MATTHIEU
+        
+    def go_to_checkout(self):
+        checkout = self.driver.find_element(By.CSS_SELECTOR, "#checkout")
+        checkout.click()
+
+    # @pytest.mark.skip("")
     def test_affichage_Checkout(self):
         log.info("Test de la redirection sur la page de Checkout")
 
@@ -304,15 +347,22 @@ class TestSauceDemo:
 
 
     ##### TEST TIFF
-    
-    #@pytest.mark.skip("")
+
+    @pytest.mark.skip("")
     def test_add_item(self):
         self.login()
-        sauce_labs_item = self.add_item("backpack")
-        shopping_container = self.driver.find_element(By.ID, "shopping_cart_container")
+        backpack_item = "backpack"
+        add_to_cart_button = self.driver.find_element(
+            By.ID, f"add-to-cart-sauce-labs-{backpack_item}"
+        )
+        self.add_item(backpack_item)
+        log.info(f"Le bouton : {add_to_cart_button} est cliqué")
+        post_add_item_click = self.driver.find_element(
+            By.ID, f"remove-sauce-labs-{backpack_item}"
+        )
         assert (
-            sauce_labs_item != shopping_container.text
-        ), f"L'item {sauce_labs_item} ne correspond pas à l'item {shopping_container.text} présent dans le panier."
+            add_to_cart_button == post_add_item_click
+        ), f"Le bouton {add_to_cart_button} ne correspond pas au résultat attendu qui est : {post_add_item_click}"
         log.info(
-            f"L'item : {shopping_container.text} a été ajouté et l'item : {sauce_labs_item} était attendu"
+            f"Avant d'ajouter l'item le bouton proposé est : {add_to_cart_button} et le bouton est : {post_add_item_click} après ajout de l'item"
         )