def test_e2e(self, data_e2e): log = self.get_logger() self.log_testdata_info(log, data_e2e) # Test Data products_to_buy = [x.strip() for x in str(data_e2e['products']).split(',')] search_destination = data_e2e['search_country'] ship_to_destination = data_e2e['country'] success_message_expected = ShopData.SUCCESS_MSG_EXPECTED # Steps and Assertions homepage = Homepage(self.driver, self.test_url) homepage.goto() product_page = homepage.click_shop_button() product_page.add_products_to_cart(products_to_buy) assert product_page.get_checkout_number() == len(products_to_buy) cart_page = product_page.click_checkout_button() products_in_cart = cart_page.get_products() product_names_in_cart = [p.name for p in products_in_cart] assert product_names_in_cart == products_to_buy product_totals_in_cart = [p.total for p in products_in_cart] assert sum(product_totals_in_cart) == cart_page.get_total() checkout_page = cart_page.click_checkout_button() checkout_page.enter_destination(search_destination) checkout_page.select_destination_from_dropdown(ship_to_destination) assert ship_to_destination == checkout_page.get_destination() checkout_page.click_agree_condition() checkout_page.click_purchase_button() assert success_message_expected in checkout_page.get_success_text()
def test_home(self, home_data): log = self.get_logger() self.log_testdata_info(log, home_data) homepage = Homepage(self.driver, self.test_url) homepage.goto() homepage.enter_name(home_data['name']) homepage.enter_email(home_data['email']) homepage.enter_password(home_data['password']) homepage.select_love_ice_cream(home_data['love_ice_cream']) homepage.select_gender(home_data['gender']) homepage.select_employment_status(home_data['status']) homepage.enter_date_of_birth(home_data['birthdate']) homepage.click_submit_button() # Verify data is shown on the UI assert homepage.get_text_from_input( HomepageLocators.NAME_FIELD) == home_data['name'] assert homepage.get_text_from_input( HomepageLocators.EMAIL_FIELD) == home_data['email'] assert homepage.get_love_ice_cream() == home_data['love_ice_cream'] assert homepage.get_text_from_input( HomepageLocators.GENDER_SELECT) == home_data['gender'] assert homepage.get_employment_status() == home_data['status'] assert homepage.get_text_from_input( HomepageLocators.DOB_FIELD) == home_data['birthdate'].strftime( '%Y-%m-%d') assert HomeData.SUCCESS_TEXT_EXPECTED in homepage.get_success_text()