def test_no_product_continue_shopping(self): try: driver = self.driver driver.get(var_info.url_login) login = LoginPage(driver) login.enter_login_info(var_info.username_p, var_info.password_s) product = ProductPage(driver) general = GeneralPage(driver) general.cart_sign().click() cart = CartPage(driver) shopping_button = cart.cart_continue_shopping() shopping_button.click() assert driver.current_url == "https://www.saucedemo.com/inventory.html" except AssertionError as error: print("AssertionError occurred") print(error) cur_time = datetime.datetime.now().strftime("%H-%M-%S_%d_%m_%Y") testName = utils.whoami() screenshotName = testName + "_" + cur_time allure.attach(self.driver.get_screenshot_as_png(), name=screenshotName, attachment_type=allure.attachment_type.PNG) self.driver.get_screenshot_as_file( "/Users/yuchienhuang/Desktop/Swag_labs/Funtionality_Reports/cart_page/cart_page_screenshots/cart_page_problem_user/" + screenshotName + ".png") raise
def test_successful_order(self): try: driver = self.driver driver.get(var_info.url_login) driver.refresh() loginpage = LoginPage(driver) loginpage.enter_login_info(var_info.username_p, var_info.password_s) inventory = ProductPage(driver) inventory.click_add_to_cart(2) inventory.product_add_to_cart(4).click() general = GeneralPage(driver) general.cart_sign().click() cartpage = CartPage(driver) continue_button = cartpage.cart_checkout_button() continue_button.click() client_info = ClientInfoPage(driver) client_info.input_first_name("Erica") client_info.input_last_name("Liam") client_info.input_zipcode("78666") client_info.continue_button().click() outside = OutSideElement(driver) cart_qty = outside.cart_qty() overview = CheckoutOverview(driver) finish_button = overview.overview_finish() finish_button.click() successful_order = overview.successfully_placed_order() successful_img = overview.successfully_img() final_cart_qty = outside.cart_qty() assert successful_order.is_displayed() assert successful_order == True assert successful_img == True assert final_cart_qty == None assert driver.current_url == "https://www.saucedemo.com/checkout-complete.html" except AssertionError as error: print("AssertionError occurred") print(error) cur_time = datetime.datetime.now().strftime("%H-%M-%S_%d_%m_%Y") testName = utils.whoami() screenshotName = testName + "_" + cur_time allure.attach(self.driver.get_screenshot_as_png(), name=screenshotName, attachment_type=allure.attachment_type.PNG) self.driver.get_screenshot_as_file( "/Users/yuchienhuang/Desktop/Swag_labs/Funtionality_Reports/checkout_overview/checkout_overview_screenshots/checkout_overview_problem_user/" + screenshotName + ".png") raise except: print("There is an exception") raise finally: print("Done")
def test_invalid_info_with_cancel(self): driver = self.driver driver.get(var_info.url_login) driver.refresh() loginpage = LoginPage(driver) loginpage.enter_login_info(var_info.username_s, var_info.password_s) inventory = ProductPage(driver) inventory.click_add_to_cart(2) inventory.label_add_to_cart("Sauce Labs Fleece Jacket") inventory.cart_sign().click() cartpage = CartPage(driver) continue_button = cartpage.cart_checkout_button() continue_button.click() client_info = ClientInfoPage(driver) client_info.input_first_name("") client_info.input_last_name("") client_info.input_zipcode("") client_info.cancel_button().click() outside = OutSideElement(driver) checkout_button = cartpage.cart_checkout_button() checkout_button.click() cart_qty = outside.cart_qty() assert driver.current_url == "https://www.saucedemo.com/cart.html" assert cart_qty.text == "2"
def test_remove_products_in_checkout(self): driver = self.driver driver.get(var_info.url_login) driver.refresh() loginpage = LoginPage(driver) loginpage.enter_login_info(var_info.username_s, var_info.password_s) inventory = ProductPage(driver) inventory.click_add_to_cart(2) inventory.label_add_to_cart("Sauce Labs Fleece Jacket") inventory.cart_sign().click() cartpage = CartPage(driver) qty_display = cartpage.cart_input_qty() remove = cartpage.cart_product_remove(2) outside = OutSideElement(driver) cart_qty = outside.cart_qty() sum_items = cartpage.to_buy_total() assert sum_items == 1 assert cart_qty.text =="1" assert qty_display.text == "1"
def test_blank_info_cancel(self): try: driver = self.driver driver.get(var_info.url_login) login = LoginPage(driver) # get account and password login.enter_login_info(var_info.username_p, var_info.password_s) general = GeneralPage(driver) general.cart_sign().click() cartpage = CartPage(driver) time.sleep(3) cartpage.cart_checkout_button().click() info_page = ClientInfoPage(driver) info_page.input_first_name("") info_page.input_last_name("") info_page.input_zipcode("") info_page.cancel_button().click() assert driver.current_url == "https://www.saucedemo.com/cart.html" except AssertionError as error: print("AssertionError occurred") print(error) cur_time = datetime.datetime.now().strftime("%H-%M-%S_%d_%m_%Y") testName = utils.whoami() screenshotName = testName + "_" + cur_time allure.attach(self.driver.get_screenshot_as_png(), name=screenshotName, attachment_type=allure.attachment_type.PNG) self.driver.get_screenshot_as_file( "/Users/yuchienhuang/Desktop/Swag_labs/Funtionality_Reports/client_info/client_info_screenshots/client_info_page_problem_user/" + screenshotName + ".png") raise
def test_remove_checkout(self): try: driver = self.driver driver.get(var_info.url_login) login = LoginPage(driver) login.enter_login_info(var_info.username_pe, var_info.password_s) product = ProductPage(driver) product.click_add_to_cart(2) product.click_add_to_cart(6) general = GeneralPage(driver) general.cart_sign().click() cart = CartPage(driver) cart.cart_product_remove(1) items_display = cart.total_product_in_cart() qty = general.cart_qty() assert items_display == 1 assert qty.text == "1" except AssertionError as error: print("AssertionError occurred") print(error) cur_time = datetime.datetime.now().strftime("%H-%M-%S_%d_%m_%Y") testName = utils.whoami() screenshotName = testName + "_" + cur_time allure.attach(self.driver.get_screenshot_as_png(), name=screenshotName, attachment_type=allure.attachment_type.PNG) self.driver.get_screenshot_as_file( "/Users/yuchienhuang/Desktop/Swag_labs/Funtionality_Reports/cart_page/cart_page_screenshots/cart_page_performance_glitch/" + screenshotName + ".png") raise
def test_blank_last_name(self): driver = self.driver driver.get(var_info.url_login) driver.refresh() loginpage = LoginPage(driver) loginpage.enter_login_info(var_info.username_s, var_info.password_s) inventory = ProductPage(driver) inventory.click_add_to_cart(2) inventory.label_add_to_cart("Sauce Labs Fleece Jacket") inventory.cart_sign().click() cartpage = CartPage(driver) continue_button = cartpage.cart_checkout_button() continue_button.click() client_info = ClientInfoPage(driver) client_info.input_first_name("Cool") client_info.input_last_name("") client_info.input_zipcode("78666") client_info.continue_button().click() sign = client_info.warning_sign() print(sign.text) assert driver.current_url == "https://www.saucedemo.com/checkout-step-one.html" assert sign.text == "Error: Last Name is required"
def test_individual_page_to_cart(self): try: driver = self.driver driver.get(var_info.url_login) login = LoginPage(driver) login.enter_login_info(var_info.username_p, var_info.password_s) product = ProductPage(driver) product.click_product_label(4) general = GeneralPage(driver) individual = DetailsPage(driver) individual.check_single_add_to_cart().click() general.cart_sign().click() cart = CartPage(driver) qty = general.cart_qty() items_display = cart.total_product_in_cart() assert items_display == 1 assert qty.text == "1" assert driver.current_url == "https://www.saucedemo.com/cart.html" except AssertionError as error: print("AssertionError occurred") print(error) cur_time = datetime.datetime.now().strftime("%H-%M-%S_%d_%m_%Y") testName = utils.whoami() screenshotName = testName + "_" + cur_time allure.attach(self.driver.get_screenshot_as_png(), name=screenshotName, attachment_type=allure.attachment_type.PNG) self.driver.get_screenshot_as_file( "/Users/yuchienhuang/Desktop/Swag_labs/Funtionality_Reports/cart_page/cart_page_screenshots/cart_page_problem_user/" + screenshotName + ".png") raise
def test_cart_is_empty(self): print('Cart Page Test TC_1: Check if shopping cart is empty') self.driver.implicitly_wait(5) ip = InventoryPage(self.driver) cp = CartPage(self.driver) ip.click_cart_button() cp.check_if_cart_is_empty()
def test_info_displayed(self): try: driver = self.driver driver.get(var_info.url_login) driver.refresh() loginpage = LoginPage(driver) loginpage.enter_login_info(var_info.username_p, var_info.password_s) inventory = ProductPage(driver) inventory.click_add_to_cart(2) inventory.product_add_to_cart(4).click() general = GeneralPage(driver) general.cart_sign().click() cartpage = CartPage(driver) continue_button = cartpage.cart_checkout_button() continue_button.click() client_info = ClientInfoPage(driver) client_info.input_first_name("Erica") client_info.input_last_name("Liam") client_info.input_zipcode("78666") client_info.continue_button().click() outside = OutSideElement(driver) cart_qty = outside.cart_qty() overview = CheckoutOverview(driver) qty_item = overview.total_item() payment_info = overview.check_payment_all_info() delivery_info = overview.check_delivery_all_info() item_total, tax, total = overview.total_amount() finish_button = overview.overview_finish() cancel_button = overview.overview_cancel() print(item_total, tax, total) assert qty_item == 2 assert cart_qty.text == "2" assert payment_info.is_displayed() assert delivery_info.is_displayed() assert item_total == "Item total: $59.980000000000004" assert tax == "Tax: $4.80" assert total == "Total: $64.78" assert finish_button.is_displayed() assert cancel_button.is_displayed() except AssertionError as error: print("AssertionError occurred") print(error) cur_time = datetime.datetime.now().strftime("%H-%M-%S_%d_%m_%Y") testName = utils.whoami() screenshotName = testName + "_" + cur_time allure.attach(self.driver.get_screenshot_as_png(), name=screenshotName, attachment_type=allure.attachment_type.PNG) self.driver.get_screenshot_as_file( "/Users/yuchienhuang/Desktop/Swag_labs/Funtionality_Reports/checkout_overview/checkout_overview_screenshots/checkout_overview_problem_user/" + screenshotName + ".png") raise
def test_purchase_successfully_with_products(self): try: driver = self.driver driver.get(var_info.url_product) product = ProductPage(driver) product.click_add_to_cart(2) product.click_add_to_cart(6) general = GeneralPage(driver) sign = general.cart_sign() sign.click() cart = CartPage(driver) checkout_button = cart.cart_checkout_button() checkout_button.click() info_page = ClientInfoPage(driver) info_page.input_first_name("Jill") info_page.input_last_name("Maddison") info_page.input_zipcode("10990") c_button = info_page.continue_button() c_button.click() overview = CheckoutOverview(driver) result = overview.overview_finish() result.click() success = overview.successfully_img() general = GeneralPage(driver) qty = general.cart_qty() sign = general.cart_sign() assert success == True assert driver.current_url == "https://www.saucedemo.com/checkout-complete.html" assert qty == None assert sign.is_displayed() except AssertionError as error: print("AssertionError occurred") print(error) cur_time = datetime.datetime.now().strftime("%H-%M-%S_%d_%m_%Y") testName = utils.whoami() screenshotName = testName + "_" + cur_time allure.attach(self.driver.get_screenshot_as_png(), name=screenshotName, attachment_type=allure.attachment_type.PNG) self.driver.get_screenshot_as_file( "/Users/yuchienhuang/Desktop/Swag_labs/Funtionality_Reports/client_info/client_info_screenshots/client_info_page_performance_glitch/" + screenshotName + ".png") raise except: print("There is an exception") raise finally: print("Done")
def test_reset_with_items_overview(self): try: driver = self.driver driver.get(var_info.url_product) product = ProductPage(driver) product.click_add_to_cart(2) product.click_add_to_cart(6) general = GeneralPage(driver) sign = general.cart_sign() sign.click() cart = CartPage(driver) checkout_button = cart.cart_checkout_button() checkout_button.click() info_page = ClientInfoPage(driver) info_page.input_first_name("Jill") info_page.input_last_name("Maddison") info_page.input_zipcode("10990") c_button = info_page.continue_button() c_button.click() time.sleep(3) general.drop_down_menu() general.pick_item_from_menu("Reset App State") general.delete_menu().click() overview = CheckoutOverview(driver) total_product = overview.total_product_in_cart() qty = general.cart_qty() assert qty == None assert total_product == None except AssertionError as error: print("AssertionError occurred") print(error) cur_time = datetime.datetime.now().strftime("%H-%M-%S_%d_%m_%Y") testName = utils.whoami() screenshotName = testName + "_" + cur_time allure.attach(self.driver.get_screenshot_as_png(), name=screenshotName, attachment_type=allure.attachment_type.PNG) self.driver.get_screenshot_as_file( "/Users/yuchienhuang/Desktop/Swag_labs/Funtionality_Reports/client_info/client_info_screenshots/client_info_page_performance_glitch/" + screenshotName + ".png") raise except: print("There is an exception") raise finally: print("Done")
def test_cancel_purchase_before_complete(self): try: driver = self.driver driver.get(var_info.url_product) product = ProductPage(driver) product.click_add_to_cart(2) product.click_add_to_cart(6) general = GeneralPage(driver) sign = general.cart_sign() sign.click() cart = CartPage(driver) checkout_button = cart.cart_checkout_button() checkout_button.click() info_page = ClientInfoPage(driver) info_page.input_first_name("Jill") info_page.input_last_name("Maddison") info_page.input_zipcode("10990") c_button = info_page.continue_button() c_button.click() overview = CheckoutOverview(driver) result = overview.overview_cancel() result.click() product2 = product.product_add_to_cart(2) product6 = product.product_add_to_cart(6) assert product2.text == "REMOVE" assert product6.text == "REMOVE" except AssertionError as error: print("AssertionError occurred") print(error) cur_time = datetime.datetime.now().strftime("%H-%M-%S_%d_%m_%Y") testName = utils.whoami() screenshotName = testName + "_" + cur_time allure.attach(self.driver.get_screenshot_as_png(), name=screenshotName, attachment_type=allure.attachment_type.PNG) self.driver.get_screenshot_as_file( "/Users/yuchienhuang/Desktop/Swag_labs/Funtionality_Reports/client_info/client_info_screenshots/client_info_page_performance_glitch/" + screenshotName + ".png") raise except: print("There is an exception") raise finally: print("Done")
def test_login_successfully(self): login_page = LoginPage(self.driver) login_page.login(TestData.USERNAME, TestData.PASSWORD) product_page = ProductPage(self.driver) product_page.add_product_to_cart(1) product_page.add_product_to_cart(2) product_page.add_product_to_cart(3) product_page.click_bag_icon() time.sleep(2) cart_page = CartPage(self.driver) cart_page.shopping_button() product_page.add_product_to_cart(4) time.sleep(2)
def test_product2(self): products = Data.read_products_from_json(self) assertion = Assertion() login_page = LoginPage(self.driver) account = Account(Data.USERNAME_STANDARD_USER, Data.PASSWORD) login_page.login(account) product_page = ProductsPage(self.driver) for index in [1, 2, 3]: product_page.click_add_to_cart_button(index) product_page.click_badge_icon() cart_page = CartPage(self.driver) for index in [1, 2, 3]: actual_product = cart_page.get_product_info(index) expected_product = products[index - 1] assertion.compare_products(actual_product, expected_product) cart_page.click_checkout_button() checkout_step_one_page = CheckoutStepOnePage(self.driver) checkout_step_one = CheckoutStepOne('a', 'b', 123) checkout_step_one_page.add_checkout_info(checkout_step_one) checkout_step_one_page.click_continue_button() checkout_step_two_page = CheckoutStepTwoPage(self.driver) total_price = 0.00 for index in [1, 2, 3]: actual_product = checkout_step_two_page.get_product_info(index) expected_product = products[index - 1] assertion.compare_products(actual_product, expected_product) print(actual_product.quantity) total_price += Utility().multiple(actual_product.quantity, actual_product.price) actual_tax = total_price * 0.08004 self.assertEqual(float("{:.2f}".format(actual_tax)), checkout_step_two_page.get_tax()) actual_total = total_price + actual_tax self.assertEqual(float("{:.2f}".format(actual_total)), checkout_step_two_page.get_total()) print(checkout_step_two_page.get_item_total()) print(checkout_step_two_page.get_tax()) print(checkout_step_two_page.get_total()) checkout_step_two_page.click_finish()
def test_valid_info_checkout(self): try: driver = self.driver driver.get(var_info.url_login) login = LoginPage(driver) # get account and password login.enter_login_info(var_info.username_pe, var_info.password_s) general = GeneralPage(driver) general.cart_sign().click() cartpage = CartPage(driver) time.sleep(3) cartpage.cart_checkout_button().click() info_page = ClientInfoPage(driver) info_page.input_first_name("Jojo") info_page.input_last_name("Wang") info_page.input_zipcode("77759") continue_button = info_page.continue_button() continue_button.click() cart_sign = info_page.info_cart_sign() cart_qty = info_page.info_cart_qty() assert driver.current_url == "https://www.saucedemo.com/checkout-step-two.html" assert cart_sign.is_displayed() assert cart_qty == None except AssertionError as error: print("AssertionError occurred") print(error) cur_time = datetime.datetime.now().strftime("%H-%M-%S_%d_%m_%Y") testName = utils.whoami() screenshotName = testName + "_" + cur_time allure.attach(self.driver.get_screenshot_as_png(), name=screenshotName, attachment_type=allure.attachment_type.PNG) self.driver.get_screenshot_as_file( "/Users/yuchienhuang/Desktop/Swag_labs/Funtionality_Reports/client_info/client_info_screenshots//Users/yuchienhuang/Desktop/Swag_labs/Funtionality_Reports/client_info/client_info_screenshots/client_info_page_performance_glitch/" + screenshotName + ".png") raise except: print("There is an exception") raise finally: print("Done")
def test_displayed_elements_in_page(self): driver = self.driver driver.get(var_info.url_login) loginpage = LoginPage(driver) loginpage.enter_login_info(var_info.username_s, var_info.password_s) inventory = ProductPage(driver) inventory.cart_sign().click() cartpage = CartPage(driver) title = cartpage.cart_title() qty_label = cartpage.cart_qty_label() cart_desc = cartpage.cart_desc() shopping_button = cartpage.cart_continue_shopping() checkout_button = cartpage.cart_checkout_button() outside = OutSideElement(driver) cart_sign = outside.cart_sign() cart_qty = outside.cart_qty() assert title.text == "Your Cart" assert qty_label.text == "QTY" assert cart_desc.text == "DESCRIPTION" assert cart_sign.is_displayed() assert cart_qty == None assert shopping_button.is_displayed() assert checkout_button.is_displayed()
def test_cancel_on_your_information(self): try: driver = self.driver driver.get(var_info.url_product) product = ProductPage(driver) product.click_add_to_cart(2) product.click_add_to_cart(6) general = GeneralPage(driver) sign = general.cart_sign() sign.click() cart = CartPage(driver) checkout_button = cart.cart_checkout_button() checkout_button.click() info_page = ClientInfoPage(driver) info_page.cancel_button().click() qty = general.cart_qty() total = cart.total_product_in_cart() assert driver.current_url == "https://www.saucedemo.com/cart.html" assert qty.text == "2" assert total == 2 except AssertionError as error: print("AssertionError occurred") print(error) cur_time = datetime.datetime.now().strftime("%H-%M-%S_%d_%m_%Y") testName = utils.whoami() screenshotName = testName + "_" + cur_time allure.attach(self.driver.get_screenshot_as_png(), name=screenshotName, attachment_type=allure.attachment_type.PNG) self.driver.get_screenshot_as_file( "/Users/yuchienhuang/Desktop/Swag_labs/Funtionality_Reports/client_info/client_info_screenshots/client_info_page_performance_glitch/" + screenshotName + ".png") raise except: print("There is an exception") raise finally: print("Done")
def test_info_display_default(self): try: driver = self.driver driver.get(var_info.url_login) login = LoginPage(driver) # get account and password login.enter_login_info(var_info.username_s, var_info.password_s) general = GeneralPage(driver) general.cart_sign().click() cartpage = CartPage(driver) time.sleep(3) cartpage.cart_checkout_button().click() info_page = ClientInfoPage(driver) info_page.input_first_name("Jill") info_page.input_last_name("Norstrom^") info_page.input_zipcode("77888") c_button = info_page.continue_button() c_button.click() overview = CheckoutOverview(driver) items = overview.total_product_in_cart() payment = overview.check_payment_all_info() delivery = overview.check_delivery_all_info() amount = overview.total_amount() assert items == None assert payment.is_displayed() == False assert delivery.is_displayed() == False assert isinstance(amount, list) == False except AssertionError as error: print("AssertionError occurred") print(error) cur_time = datetime.datetime.now().strftime("%H-%M-%S_%d_%m_%Y") testName = utils.whoami() screenshotName = testName + "_" + cur_time allure.attach(self.driver.get_screenshot_as_png(), name=screenshotName, attachment_type=allure.attachment_type.PNG) self.driver.get_screenshot_as_file( "/Users/yuchienhuang/Desktop/Swag_labs/Funtionality_Reports/client_info/client_info_screenshots/client_info_page_valid_user/" + screenshotName + ".png") raise
def test_order_placed_through_inventory_page(self, acc, pws): try: driver = self.driver driver.get(var_info.url_login) login = LoginPage(driver) login.enter_login_info(acc, pws) #login.enter_login_info(var_info.username_s, var_info.password_s) product = ProductPage(driver) product.click_add_to_cart(3) product.click_add_to_cart(5) general = GeneralPage(driver) general.cart_sign().click() cart_page = CartPage(driver) cart_page.cart_checkout_button().click() client_info = ClientInfoPage(driver) client_info.input_first_name("Leyla") client_info.input_last_name("Hinderson") client_info.input_zipcode("78990") client_info.continue_button().click() checkout_overview = CheckoutOverview(driver) checkout_overview.overview_finish().click() success_img = checkout_overview.successfully_img() success_note = checkout_overview.successfully_placed_order() assert success_note == True assert success_img == True except AssertionError as error: print("AssertionError occurred") print(error) cur_time = datetime.datetime.now().strftime("%H-%M-%S_%d_%m_%Y") testName = utils.whoami() screenshotName = testName + "_" + cur_time allure.attach(self.driver.get_screenshot_as_png(), name=screenshotName, attachment_type=allure.attachment_type.PNG) self.driver.get_screenshot_as_file( "/Users/yuchienhuang/Desktop/Swag_labs/Regression_Reports/" + screenshotName + ".png") raise
def test_product_checout(self): login_page = LoginPage(self.driver) login_page.login(TestData.USERNAME, TestData.PASSWORD) product_page = ProductPage(self.driver) for index, excute_produce in enumerate(product_page.get_product_info(), start=1): product_page.click_bag_icon() time.sleep(2) cart_page = CartPage(self.driver) time.sleep(2) cart_page.click_checkout() checkout_step_one_page = CheckoutStepOne(self.driver) checkout_step_one_page.addcode(TestData.FIRSTNAME, TestData.LASTNAME, TestData.ZIPCODE) checkout_step_one_page.click_continute() checkout_step_two_page = CheckoutStepTwo(self.driver) checkout_step_two_page.click_finish_button() time.sleep(3)
def test_continue_shopping_button(self): driver = self.driver driver.get(var_info.url_login) driver.refresh() loginpage = LoginPage(driver) loginpage.enter_login_info(var_info.username_s, var_info.password_s) inventory = ProductPage(driver) inventory.click_add_to_cart(2) inventory.label_add_to_cart("Sauce Labs Fleece Jacket") inventory.cart_sign().click() cartpage = CartPage(driver) qty_display = cartpage.cart_input_qty() remove = cartpage.cart_product_remove(2) outside = OutSideElement(driver) sum_items = cartpage.to_buy_total() continue_button = cartpage.cart_continue_shopping() continue_button.click() cart_qty = outside.cart_qty() assert cart_qty.text == "1" assert driver.current_url == "https://www.saucedemo.com/inventory.html"
def test_with_character_all_info(self): try: driver = self.driver driver.get(var_info.url_login) login = LoginPage(driver) # get account and password login.enter_login_info(var_info.username_pe, var_info.password_s) general = GeneralPage(driver) general.cart_sign().click() cartpage = CartPage(driver) time.sleep(3) cartpage.cart_checkout_button().click() info_page = ClientInfoPage(driver) info_page.input_first_name("@#$%^") info_page.input_last_name("#$%^") info_page.input_zipcode("$%667") c_button = info_page.continue_button() c_button.click() warning = info_page.warning_sign() assert warning == True assert driver.current_url != "https://www.saucedemo.com/checkout-step-two.html" except AssertionError as error: print("AssertionError occurred") print(error) cur_time = datetime.datetime.now().strftime("%H-%M-%S_%d_%m_%Y") testName = utils.whoami() screenshotName = testName + "_" + cur_time allure.attach(self.driver.get_screenshot_as_png(), name=screenshotName, attachment_type=allure.attachment_type.PNG) self.driver.get_screenshot_as_file( "/Users/yuchienhuang/Desktop/Swag_labs/Funtionality_Reports/checkout_overview/checkout_overview_screenshots/checkout_overview_performance_glitch" + screenshotName + ".png") raise
def test_finish_with_default(self): try: driver = self.driver driver.get(var_info.url_login) login = LoginPage(driver) # get account and password login.enter_login_info(var_info.username_s, var_info.password_s) general = GeneralPage(driver) general.cart_sign().click() cartpage = CartPage(driver) time.sleep(3) cartpage.cart_checkout_button().click() info_page = ClientInfoPage(driver) info_page.input_first_name("Jill") info_page.input_last_name("Norstrom^") info_page.input_zipcode("77888") c_button = info_page.continue_button() c_button.click() overview = CheckoutOverview(driver) result = overview.overview_finish() result.click() assert result != "https://www.saucedemo.com/checkout-complete.html" except AssertionError as error: print("AssertionError occurred") print(error) cur_time = datetime.datetime.now().strftime("%H-%M-%S_%d_%m_%Y") testName = utils.whoami() screenshotName = testName + "_" + cur_time allure.attach(self.driver.get_screenshot_as_png(), name=screenshotName, attachment_type=allure.attachment_type.PNG) self.driver.get_screenshot_as_file( "/Users/yuchienhuang/Desktop/Swag_labs/Funtionality_Reports/client_info/client_info_screenshots/client_info_page_valid_user/" + screenshotName + ".png") raise
def test_checkout_button(self): driver = self.driver driver.get(var_info.url_login) driver.refresh() loginpage = LoginPage(driver) loginpage.enter_login_info(var_info.username_s, var_info.password_s) inventory = ProductPage(driver) inventory.click_add_to_cart(2) inventory.label_add_to_cart("Sauce Labs Fleece Jacket") inventory.cart_sign().click() cartpage = CartPage(driver) qty_display = cartpage.cart_input_qty() outside = OutSideElement(driver) checkout_button = cartpage.cart_checkout_button() checkout_button.click() cart_qty = outside.cart_qty() assert cart_qty.text == "2" assert driver.current_url == "https://www.saucedemo.com/checkout-step-one.html"
def test_blank_zipcode_continue(self): try: driver = self.driver driver.get(var_info.url_login) login = LoginPage(driver) # get account and password login.enter_login_info(var_info.username_s, var_info.password_s) general = GeneralPage(driver) general.cart_sign().click() cartpage = CartPage(driver) time.sleep(3) cartpage.cart_checkout_button().click() info_page = ClientInfoPage(driver) info_page.input_first_name("Jojo") info_page.input_last_name("Kong") info_page.input_zipcode("") c_button = info_page.continue_button() c_button.click() warning = info_page.warning_sign() assert warning.text == "Error: Postal Code is required" except AssertionError as error: print("AssertionError occurred") print(error) cur_time = datetime.datetime.now().strftime("%H-%M-%S_%d_%m_%Y") testName = utils.whoami() screenshotName = testName + "_" + cur_time allure.attach(self.driver.get_screenshot_as_png(), name=screenshotName, attachment_type=allure.attachment_type.PNG) self.driver.get_screenshot_as_file( "/Users/yuchienhuang/Desktop/Swag_labs/Funtionality_Reports/client_info/client_info_screenshots/client_info_page_valid_user/" + screenshotName + ".png") raise
def test_valid_client_info(self): driver = self.driver driver.get(var_info.url_login) driver.refresh() loginpage = LoginPage(driver) loginpage.enter_login_info(var_info.username_s, var_info.password_s) inventory = ProductPage(driver) inventory.click_add_to_cart(2) inventory.label_add_to_cart("Sauce Labs Fleece Jacket") inventory.cart_sign().click() cartpage = CartPage(driver) continue_button = cartpage.cart_checkout_button() continue_button.click() client_info = ClientInfoPage(driver) client_info.input_first_name("Erica") client_info.input_last_name("Liam") client_info.input_zipcode("78666") client_info.continue_button().click() assert driver.current_url == "https://www.saucedemo.com/checkout-step-two.html"
def test_displayed_products_checkout_button(self): try: driver = self.driver driver.get(var_info.url_login) login = LoginPage(driver) # get account and password login.enter_login_info(var_info.username_s, var_info.password_s) driver = self.driver driver.get(var_info.url_product) product = ProductPage(driver) product.click_add_to_cart(2) product.click_add_to_cart(6) general = GeneralPage(driver) general.cart_sign().click() cart = CartPage(driver) checkout_button = cart.cart_checkout_button() checkout_button.click() assert driver.current_url == "https://www.saucedemo.com/checkout-step-one.html" except AssertionError as error: print("AssertionError occurred") print(error) cur_time = datetime.datetime.now().strftime("%H-%M-%S_%d_%m_%Y") testName = utils.whoami() screenshotName = testName + "_" + cur_time allure.attach(self.driver.get_screenshot_as_png(), name=screenshotName, attachment_type=allure.attachment_type.PNG) self.driver.get_screenshot_as_file( "/Users/yuchienhuang/Desktop/Swag_labs/Funtionality_Reports/cart_page/cart_page_screenshots/cart_page_valid_user/" + screenshotName + ".png") raise
def test_reset_button(self): try: driver = self.driver driver.get(var_info.url_login) login = LoginPage(driver) login.enter_login_info(var_info.username_p, var_info.password_s) product = ProductPage(driver) product.click_add_to_cart(2) product.click_add_to_cart(6) general = GeneralPage(driver) general.cart_sign().click() general.drop_down_menu() general.pick_item_from_menu("Reset App State") general.display_delete_button() cart = CartPage(driver) qty = general.cart_qty() items_display = cart.total_product_in_cart() assert qty == None assert items_display == None #it should has nothing after hitting reset except AssertionError as error: print("AssertionError occurred") print(error) cur_time = datetime.datetime.now().strftime("%H-%M-%S_%d_%m_%Y") testName = utils.whoami() screenshotName = testName + "_" + cur_time allure.attach(self.driver.get_screenshot_as_png(), name=screenshotName, attachment_type=allure.attachment_type.PNG) self.driver.get_screenshot_as_file( "/Users/yuchienhuang/Desktop/Swag_labs/Funtionality_Reports/cart_page/cart_page_screenshots/cart_page_problem_user/" + screenshotName + ".png") raise
def test_login_successfully(self): login_page = LoginPage(self.driver) login_page.login(TestData.USERNAME, TestData.PASSWORD) product_page = ProductPage(self.driver) product_page.add_product_to_cart(1) product_page.add_product_to_cart(2) product_page.add_product_to_cart(3) product_page.click_bag_icon() time.sleep(2) cart_page = CartPage(self.driver) cart_page.remove_product_to_cart_in_bag(1) time.sleep(2) cart_page.click_checkout() checkout_step_one_page = CheckoutStepOne(self.driver) checkout_step_one_page.click_cancel_button() time.sleep(3)