Pārlūkot izejas kodu

ajout cas de test checkout

Gogs 1 gadu atpakaļ
vecāks
revīzija
f33b989344
1 mainītis faili ar 160 papildinājumiem un 4 dzēšanām
  1. 160 4
      test_sauce_demo_class.py

+ 160 - 4
test_sauce_demo_class.py

@@ -88,9 +88,20 @@ class TestSauceDemo:
         checkout = self.driver.find_element(By.CSS_SELECTOR, "#checkout")
         checkout.click()
 
+    def fill_checkout(self,name1,name2,zip):
+        first_name=self.driver.find_element(By.ID,"first-name")
+        last_name=self.driver.find_element(By.ID,"last-name")
+        zip_code=self.driver.find_element(By.ID,"postal-code")
+
+        writeInInput(inputElement=first_name, text=name1)
+        writeInInput(inputElement=last_name, text=name2)
+        writeInInput(inputElement=zip_code, text=zip)
+
+
+
     ##### TEST ABBAS
     
-    @pytest.mark.skip("")
+    #@pytest.mark.skip("")
     def test_saucedemo_boutenbout(self):
         self.login()
         self.logout()
@@ -99,7 +110,7 @@ class TestSauceDemo:
 
 
 
-    @pytest.mark.skip("")
+    #@pytest.mark.skip("")
     def test_login_bad_username(self):
         self.login_custum("test", "secret_sauce")
 
@@ -111,7 +122,7 @@ class TestSauceDemo:
             == "Epic sadface: Username and password do not match any user in this service"
         ), "le message est erroné"
 
-    @pytest.mark.skip("")
+    #@pytest.mark.skip("")
     def test_login_bad_passwrd(self):
         self.login_custum("standard_user", "test")
 
@@ -147,9 +158,154 @@ class TestSauceDemo:
             == "https://www.saucedemo.com/checkout-step-one.html"
         ), "Nous ne somme pas sur la bonne page"
 
+
+    def test_Checkout_3_champs_vides(self):
+        log.info("Test Checkout avec tous les champs vides")
+
+        # connexion Swag Labs
+        self.login()
+
+        # ajout "Sauce Labs Bike Light" au panier -- A changer si Tiff implémente une fonction pour le faire
+        self.add_item("bike-light")
+
+        # affichage panier -- A changer si Tiff implémente une fonction pour le faire
+        panier_btn = self.driver.find_element(By.ID, "shopping_cart_container")
+        panier_btn.click()
+
+        # redirection vers la page de checkout
+        self.go_to_checkout()
+
+        self.fill_checkout("","","")
+
+        continue_btn = self.driver.find_element(By.ID, "continue")
+        continue_btn.click()
+
+        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
+            == "Error: First Name is required"
+        ), "le message est erroné"
+
+    def test_Checkout_first_name_vide(self):
+        log.info("Test Checkout avec le champ first name vide")
+
+        # connexion Swag Labs
+        self.login()
+
+        # ajout "Sauce Labs Bike Light" au panier -- A changer si Tiff implémente une fonction pour le faire
+        self.add_item("bike-light")
+
+        # affichage panier -- A changer si Tiff implémente une fonction pour le faire
+        panier_btn = self.driver.find_element(By.ID, "shopping_cart_container")
+        panier_btn.click()
+
+        # redirection vers la page de checkout
+        self.go_to_checkout()
+
+        self.fill_checkout("","Familly_name","999999")
+
+        continue_btn = self.driver.find_element(By.ID, "continue")
+        continue_btn.click()
+
+        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
+            == "Error: First Name is required"
+        ), "le message est erroné"
+
+    def test_Checkout_first_name_vide(self):
+        log.info("Test Checkout avec le champ last name vide")
+
+        # connexion Swag Labs
+        self.login()
+
+        # ajout "Sauce Labs Bike Light" au panier -- A changer si Tiff implémente une fonction pour le faire
+        self.add_item("bike-light")
+
+        # affichage panier -- A changer si Tiff implémente une fonction pour le faire
+        panier_btn = self.driver.find_element(By.ID, "shopping_cart_container")
+        panier_btn.click()
+
+        # redirection vers la page de checkout
+        self.go_to_checkout()
+
+        self.fill_checkout("First","","999999")
+
+        continue_btn = self.driver.find_element(By.ID, "continue")
+        continue_btn.click()
+
+        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
+            == "Error: Last Name is required"
+        ), "le message est erroné"
+
+    def test_Checkout_first_name_vide(self):
+        log.info("Test Checkout avec le champ zip code vide")
+
+        # connexion Swag Labs
+        self.login()
+
+        # ajout "Sauce Labs Bike Light" au panier -- A changer si Tiff implémente une fonction pour le faire
+        self.add_item("bike-light")
+
+        # affichage panier -- A changer si Tiff implémente une fonction pour le faire
+        panier_btn = self.driver.find_element(By.ID, "shopping_cart_container")
+        panier_btn.click()
+
+        # redirection vers la page de checkout
+        self.go_to_checkout()
+
+        self.fill_checkout("First","Familly_name","")
+
+        continue_btn = self.driver.find_element(By.ID, "continue")
+        continue_btn.click()
+
+        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
+            == "Error: Postal Code is required"
+        ), "le message est erroné"
+
+    def test_Checkout_ok(self):
+        log.info("Test Checkout OK")
+
+        # connexion Swag Labs
+        self.login()
+
+        # ajout "Sauce Labs Bike Light" au panier -- A changer si Tiff implémente une fonction pour le faire
+        self.add_item("bike-light")
+
+        # affichage panier -- A changer si Tiff implémente une fonction pour le faire
+        panier_btn = self.driver.find_element(By.ID, "shopping_cart_container")
+        panier_btn.click()
+
+        # redirection vers la page de checkout
+        self.go_to_checkout()
+
+        self.fill_checkout("First","Familly_name","9999")
+
+        continue_btn = self.driver.find_element(By.ID, "continue")
+        continue_btn.click()
+
+        assert (
+            self.driver.current_url
+            == "https://www.saucedemo.com/checkout-step-two.html"
+        ), "Nous ne somme pas sur la bonne page" 
+
+
     ##### TEST TIFF
     
-    @pytest.mark.skip("")
+    #@pytest.mark.skip("")
     def test_add_item(self):
         self.login()
         sauce_labs_item = self.add_item("backpack")