コード例 #1
0
 def test_user_can_add_product_to_cart(self, browser):
     link = "http://selenium1py.pythonanywhere.com/catalogue/the-shellcoders-handbook_209/?promo=newYear"
     page = ProductPage(browser, link)
     page.open()
     page.add_to_cart()
     page.solve_quiz_and_get_code()
     page.should_be_product_page()
コード例 #2
0
class Application:
    def __init__(self):
        self.driver = webdriver.Chrome()
        self.store_page = StorePage(self.driver)
        self.product_page = ProductPage(self.driver)
        self.checkout_page = CheckoutPage(self.driver)

    def quit(self):
        self.driver.quit()

    def implicitly_wait(self, time):
        self.driver.implicitly_wait(time)

    def get_product_links(self, amount):
        self.store_page.open()
        product_urls = self.store_page.find_product_urls(amount)
        return product_urls

    def add_product_to_cart(self, url):
        self.product_page.open(url)
        items = self.product_page.items_count()
        self.product_page.select()
        self.product_page.add_to_cart()
        self.product_page.wait_prod_added(items + 1)

    def remove_from_cart(self):
        self.checkout_page.open()
        total = self.checkout_page.get_total()
        prod_price = self.checkout_page.get_prod_price()
        self.checkout_page.remove_from_cart()
        self.checkout_page.check_if_correct_price(prod_price, total)
コード例 #3
0
def test_guest_can_add_product_to_cart(browser, link):
    # link = "http://selenium1py.pythonanywhere.com/catalogue/coders-at-work_207/?promo=newYear2019"
    page = ProductPage(browser, link)
    page.open()
    page.add_to_cart()
    page.solve_quiz_and_get_code()
    page.should_be_product_page()
コード例 #4
0
def test_add_product_to_cart_from_catalog(browser):
    link = 'http://selenium1py.pythonanywhere.com/catalogue/coders-at-work_207/'
    page = ProductPage(browser, link)
    page.open()
    page.add_to_cart()
    page.should_be_right_title()
    page.should_be_right_price()
コード例 #5
0
def test_guest_can_add_product_to_basket(browser, link):
    page = ProductPage(browser, link)
    page.open()
    page.add_to_cart()
    page.solve_quiz_and_get_code()
    page.should_be_right_title()
    page.should_be_right_price()
コード例 #6
0
def test_guest_can_add_product_to_basket(browser):
    link = "http://selenium1py.pythonanywhere.com/catalogue/coders-at-work_207/"
    page = ProductPage(browser, link)
    page.open()
    page.add_to_cart()
    # page.solve_quiz_and_get_code()
    page.assert_add_to_cart()
コード例 #7
0
def test_guest_can_add_product_to_basket(browser, link):
    page = ProductPage(browser, link)
    page.open()
    page.add_to_cart()
    page.solve_quiz_and_get_code()
    page.should_be_added_to_cart_message()
    page.should_be_cost_message()
コード例 #8
0
def test_guest_can_add_product_to_basket(browser, promo_offer):
    link = f"http://selenium1py.pythonanywhere.com/catalogue/coders-at" \
           f"-work_207/?promo=offer{promo_offer}"
    page = MainPage(browser, link)
    page.open()
    product_page = ProductPage(browser, browser.current_url)
    product_page.add_to_cart()
コード例 #9
0
 def test_user_can_add_product_to_basket(self, browser):
     link = "http://selenium1py.pythonanywhere.com/catalogue/coders-at-work_207/"
     page = ProductPage(browser, link)
     page.open()
     page.add_to_cart()
     page.should_be_alert_added_to_cart()
     page.should_be_alert_with_cart_price()
コード例 #10
0
def test_guest_can_add_product_to_cart(browser, link):
    page = ProductPage(browser, link)
    page.open()
    page.add_to_cart()
    page.solve_quiz_and_get_code()
    page.should_be_correct_name()
    page.should_be_correct_price()
コード例 #11
0
def test_guest_can_add_product_to_basket(browser, link):
    page = ProductPage(browser, link)
    page.open()
    page.add_to_cart()
    page.solve_quiz_and_get_code()
    page.product_name_is_correct()
    page.price_is_correct()
コード例 #12
0
 def test_user_can_add_product_to_basket(self, browser):
     link = "http://selenium1py.pythonanywhere.com/catalogue/coders-at" \
            "-work_207/?promo=newYear2019 "
     page = MainPage(browser, link)
     page.open()
     product_page = ProductPage(browser, browser.current_url)
     product_page.add_to_cart()
コード例 #13
0
 def test_user_can_add_product_to_basket(self, browser):
     link = linkk
     product_page = ProductPage(browser, link)
     product_page.open()
     product_page.add_to_cart()
     product_page.should_be_present_in_cart()
     product_page.should_check_overall_cost()
コード例 #14
0
 def test_user_can_add_product_to_basket(self, browser):
     link = f'http://selenium1py.pythonanywhere.com/catalogue/coders-at-work_207'
     page = ProductPage(browser, link)
     page.open()
     page.add_to_cart()
     page.should_be_good_in_cart()
     page.should_be_correct_cost()
コード例 #15
0
 def test_message_disappeared_after_adding_product_to_basket(self, browser):
     link = "http://selenium1py.pythonanywhere.com/catalogue/coders-at-work_207/"
     page = MainPage(browser, link)
     page.open()
     product_page = ProductPage(browser, browser.current_url)
     product_page.add_to_cart()
     product_page.should_not_be_disappeared()
コード例 #16
0
def test_message_disappeared_after_adding_product_to_basket(browser):
    link = 'http://selenium1py.pythonanywhere.com/catalogue/coders-at' \
           '-work_207/ '
    page = ProductPage(browser, link)
    page.open()
    page.add_to_cart()
    page.should_disappear_success_message()
コード例 #17
0
 def test_user_can_add_product_to_cart(self, browser):
     page = ProductPage(browser, link)
     page.open()
     page.add_to_cart()
     page.check_product_added_to_cart_message()
     page.check_product_name_added_to_cart()
     page.check_price_added_to_cart()
コード例 #18
0
def test_guest_can_add_product_to_cart_with_different_offer_numbers(
        browser, link: str) -> None:
    product_page = ProductPage(browser, link)
    product_page.open()
    product_page.add_to_cart(True)
    product_page.should_be_present_in_cart()
    product_page.should_check_overall_cost()
コード例 #19
0
class Application:
    def __init__(self):
        self.driver = webdriver.Chrome()
        # self.driver = webdriver.Remote("http://192.168.1.3:4444/wd/hub",
        #                                desired_capabilities={'browserName': 'chrome'})
        self.home_page = HomePage(self.driver)
        self.product_page = ProductPage(self.driver)
        self.checkout_page = CheckoutPage(self.driver)

    def quit(self):
        self.driver.quit()

    def add_product_to_cart(self, product):
        self.home_page.open()
        self.home_page.go_to_product_page(product.category, product.name)
        self.product_page.add_to_cart(product.amount, product.size)

    def get_current_cart_size(self):
        self.home_page.open()
        return self.home_page.get_products_amount()

    def clear_cart(self):
        self.checkout_page.open()
        self.checkout_page.remove_all_products()

    def get_products_in_cart(self):
        self.checkout_page.open()
        # return list of products in checkout_page.table
        return self.checkout_page.ProductsInOrderTable
コード例 #20
0
def test_guest_cant_see_success_message_after_adding_product_to_basket(
        browser):
    link = "http://selenium1py.pythonanywhere.com/catalogue/coders-at-work_207/"
    page = ProductPage(browser, link)
    page.open()
    page.add_to_cart()
    page.should_not_be_success_message()
コード例 #21
0
def test_guest_can_add_product_to_cart(browser, link):
    product_page = ProductPage(browser, link)
    product_page.open()
    product_page.add_to_cart()
    product_page.solve_quiz_and_get_code()
    product_page.should_be_equal_price_and_total()
    product_page.should_be_message_about_adding_to_cart()
コード例 #22
0
ファイル: application.py プロジェクト: Yurasb/selenium_course
class Application:
    def __init__(self):
        self.driver = webdriver.Chrome()
        self.main_page = MainPage(self.driver)
        self.product_page = ProductPage(self.driver)
        self.checkout_page = CheckoutPage(self.driver)

    def quit(self):
        self.driver.quit()

    def pickup_product(self):
        self.main_page.open()
        self.main_page.chose_product()

    def purchase_product(self):
        self.product_page.add_to_cart()
        self.product_page.go_to_checkout()

    def remove_invoice(self):
        self.checkout_page.remove_item()

    def remove_message(self):
        self.driver.find_element_by_tag_name('em')
        return self

    def is_invoice_removed(self):
        return self.remove_message.get_attribute(
            'textContent') == 'There are no items in your cart.'
コード例 #23
0
def test_guest_can_add_product_to_basket(browser):
    link = "http://selenium1py.pythonanywhere.com/catalogue/coders-at-work_207"
    cart = ProductPage(browser, link)
    cart.open()
    cart.add_to_cart()
    cart.price_correct()
    cart.items_correct()
コード例 #24
0
def test_message_disappeared_after_adding_product_to_basket(browser):
    link = f'http://selenium1py.pythonanywhere.com/catalogue/coders-at-work_207/?promo=offer8'
    page = ProductPage(browser, link)
    page.open()
    page.add_to_cart()
    page.solve_quiz_and_get_code()
    page.should_is_disappered()
コード例 #25
0
def test_guest_can_add_product_to_basket(browser, link):
    link = f"http://selenium1py.pythonanywhere.com/catalogue/coders-at-work_207/?promo=offer{link}"
    page = ProductPage(browser, link)
    page.open()
    page.add_to_cart()
    page.solve_quiz_and_get_code()
    page.should_be_alert_added_to_cart()
    page.should_be_alert_with_cart_price()
def test_guest_can_add_product_to_cart(browser):
    page = ProductPage(browser, promo_page_link)
    page.open()
    product_name = page.get_product_name()
    product_price = page.get_product_price()
    page.add_to_cart()
    page.solve_quiz_and_get_code()
    page.should_be_added_to_cart(product_name, product_price)
コード例 #27
0
def test_message_disappeared_after_adding_product_to_basket(browser):
    page = ProductPage(
        browser, linkNY
    )  # инициализируем Page Object, передаем в конструктор экземпляр драйвера и url адрес
    page.open()
    page.add_to_cart()
    page.solve_quiz_and_get_code()
    page.message_disappeared()
コード例 #28
0
def test_guest_can_add_product_to_basket(browser, product: str) -> None:
    link = product
    product_page = ProductPage(browser, link)
    product_page.open()
    product_page.add_to_cart()
    product_page.solve_quiz_and_get_code()
    product_page.should_be_present_in_cart()
    product_page.should_check_overall_cost()
コード例 #29
0
 def test_user_can_add_product_to_basket(self, browser):
     link = 'http://selenium1py.pythonanywhere.com/catalogue/coders-at' \
            '-work_207/ '
     page = ProductPage(browser, link)
     page.open()
     page.add_to_cart()
     page.check_alert_success()
     page.check_cart_price_is_equal_product_price()
コード例 #30
0
def test_guest_can_add_product_to_basket(browser, promo):
    link = f'http://selenium1py.pythonanywhere.com/catalogue/coders-at-work_207/{promo}'
    page = ProductPage(browser, link)
    page.open()
    page.add_to_cart()
    page.solve_quiz_and_get_code()
    page.should_be_good_in_cart()
    page.should_be_correct_cost()