Exemplo n.º 1
0
class HomePageTest(BaseTest):
    def test_launch(self):
        """Test Case untuk launch URL"""

        # Membuat objek kelas HomePage
        self.homePage = HomePage(self.driver)

        # Mengambil page title dari HomePage
        title = self.homePage.get_title()

        # Verifikasi title page
        assert TestData.WEB_TITLE in title

    def test_login(self):
        """Test Case untuk login"""

        # Membuuat objek kelas HomePage
        self.homePage = HomePage(self.driver)

        # Mengeklik tombol Sign In
        self.homePage.signin()

        # Membuat objek kelas AuthenticationPage
        self.authenticationPage = AuthenticationPage(self.homePage.driver)

        # Mengisi email, password, dan mngeklik tombol Sign In
        self.authenticationPage.signin_registered()

        # Mengambil teks dari elemen header page My Account
        element = self.authenticationPage.get_text(
            Locators.MY_ACCOUNT_PAGE_HEADER)

        # Verifikasi teks header
        assert TestData.MY_ACCOUNT_PAGE_HEADER == element
Exemplo n.º 2
0
class CheckoutTest(BaseTest):
    def test_checkout_by_bankwire(self):
        # Load Homepage
        self.homepage = HomePage(self.driver)

        # Click Sign In Button
        self.homepage.signin()

        # Load Auth Page
        self.authpage = AuthPage(self.homepage.driver)

        # Sign in with Account
        self.authpage.sign_in_success()

        # Click Website Logo
        self.homepage.logo()

        # Checkout Success
        self.homepage.checkout_success_bankwire()

        # Assertion
        status = self.homepage.get_text(Locators.CHECKOUT_STATUS_BANKWIRE)
        self.assertEqual(TestData.ALERT_CHECKOUT_SUCCESS, status)

    def test_checkout_by_check(self):
        # Load Homepage
        self.homepage = HomePage(self.driver)

        # Click Sign In Button
        self.homepage.signin()

        # Load Auth Page
        self.authpage = AuthPage(self.homepage.driver)

        # Sign in with Account
        self.authpage.sign_in_success()

        # Click Website Logo
        self.homepage.logo()

        # Checkout Success
        self.homepage.checkout_success_check()

        # Assertion
        status = self.homepage.get_text(Locators.CHECKOUT_STATUS_BY_CHECK)
        self.assertEqual(TestData.ALERT_CHECKOUT_SUCCESS, status)
Exemplo n.º 3
0
class LoginTest(BaseTest):
    def test_login_success(self):
        # Membuat objek Home Page
        self.homepage = HomePage(self.driver)

        # Klik tombol sign in
        self.homepage.signin()

        # Membuat objek Authentiaction Page
        self.authenticationpage = AuthenticationPage(self.homepage.driver)

        # Isi email dan password dan klik tombol Sign In
        self.authenticationpage.signin_success()

        # Assertion
        header = self.authenticationpage.get_text(
            Locators.MY_ACCOUNT_PAGE_HEADER)
        self.assertEqual("MY ACCOUNT", header)

    def test_login_failed(self):
        # Membuat objek homepage
        self.homepage = HomePage(self.driver)

        # Klik tombol sign in
        self.homepage.signin()

        # Membuat objek authentication page
        self.authenticationpage = AuthenticationPage(self.homepage.driver)

        # Panggil fungsi signin dengan email invalid
        self.authenticationpage.signin_email_invalid()

        # Assertion
        failed_email_result = self.homepage.get_text(
            Locators.INVALID_EMAIL_ALERT)

        self.assertEqual(failed_email_result, TestData.ALERT_EMAIL_INVALID)

    def test_login_password_invalid(self):
        # Membuat objek homepage
        self.homepage = HomePage(self.driver)

        # Klik tombol sign in
        self.homepage.signin()

        # Membuat objek authentication page
        self.authenticationpage = AuthenticationPage(self.homepage.driver)

        # Panggil fungsi signin dengan password invalid
        self.authenticationpage.signin_password_invalid()

        # Assertion
        failed_password_result = self.homepage.get_text(
            Locators.INVALID_PASSWORD_ALERT)

        self.assertEqual(failed_password_result,
                         TestData.ALERT_PASSWORD_INVALID)

    def test_both_field_empty(self):
        # Membuat objek homepage
        self.homepage = HomePage(self.driver)

        # Klik tombol sign in
        self.homepage.signin()

        # Membuat objek authentication page
        self.authenticationpage = AuthenticationPage(self.homepage.driver)

        self.homepage.click(Locators.SIGN_IN_SUBMIT)

        # Assertion
        empty_field_result = self.homepage.get_text(
            Locators.EMAIL_REQUIRED_ALERT)
        self.assertEqual(empty_field_result, TestData.ALERT_EMAIL_REQUIRED)
Exemplo n.º 4
0
class RegisterTest(BaseTest):
    def test_register_success(self):

        # Load Homeage
        self.homepage = HomePage(self.driver)

        # Click Sign In Button
        self.homepage.signin()

        # Load Auth Page
        self.authpage = AuthPage(self.homepage.driver)

        # Register Success
        self.authpage.register_success()

        time.sleep(3)

        # Assertion
        register_info = self.authpage.get_text(Locators.REG_ALERT_SUCCESS)
        self.assertEqual(TestData.ALERT_REGISTER_SUCCESS, register_info)

    def test_register_failed(self):

        # Load Homeage
        self.homepage = HomePage(self.driver)

        # Click Sign In Button
        self.homepage.signin()

        # Load Auth Page
        self.authpage = AuthPage(self.homepage.driver)

        # Register Failed
        self.authpage.register_failed()

        time.sleep(3)

        # Assertion
        register_info = self.authpage.get_text(Locators.REG_ALERT_FAILED)
        self.assertEqual(TestData.ALERT_REGISTER_FAILED, register_info)

    def test_already_registered(self):

        # Load Homepage
        self.homepage = HomePage(self.driver)

        # Click Sign In Button
        self.homepage.signin()

        # Load Auth Page
        self.authpage = AuthPage(self.homepage.driver)

        # Already Register
        self.authpage.register_failed_already_registered()

        time.sleep(3)

        # Assertion
        register_info = self.authpage.get_text(
            Locators.REG_ALERT_ALREADY_REGISTERED)
        self.assertEqual(TestData.ALERT_ALREADY_REGISTERED, register_info)
Exemplo n.º 5
0
class MyAccountTest(BaseTest):
    def test_reorder(self):
        # Load Homepage
        self.homepage = HomePage(self.driver)

        # Click Sign In Button
        self.homepage.signin()

        # Load Auth Page
        self.authpage = AuthPage(self.homepage.driver)

        # Sign in with Account
        self.authpage.sign_in_success()

        # Load MyAccount Page
        self.myaccount = MyAccountPage(self.homepage.driver)

        # Execute Reorder
        self.myaccount.reorder()

        # Assertion
        status = self.homepage.get_text(Locators.CHECKOUT_STATUS_BY_CHECK)
        self.assertEqual(TestData.ALERT_CHECKOUT_SUCCESS, status)

    def test_add_new_address(self):
        # Load Homepage
        self.homepage = HomePage(self.driver)

        # Click Sign In Button
        self.homepage.signin()

        # Load Auth Page
        self.authpage = AuthPage(self.homepage.driver)

        # Sign in with Account
        self.authpage.sign_in_success()

        # Load My Account Page
        self.myaccount = MyAccountPage(self.homepage.driver)

        # Execute Add New Address
        self.myaccount.add_new_address()

    def test_remove_address(self):
        # Load Homepage
        self.homepage = HomePage(self.driver)

        # Click Sign In Button
        self.homepage.signin()

        # Load Auth Page
        self.authpage = AuthPage(self.homepage.driver)

        # Sign in with Account
        self.authpage.sign_in_success()

        # Load My Account Page
        self.myaccount = MyAccountPage(self.homepage.driver)

        # Execute Remove Address
        self.myaccount.remove_address()

    def test_remove_wishlist(self):
        # Load Homepage
        self.homepage = HomePage(self.driver)

        # Click Sign In Button
        self.homepage.signin()

        # Load Auth Page
        self.authpage = AuthPage(self.homepage.driver)

        # Sign in with Account
        self.authpage.sign_in_success()

        # Click Website Logo
        self.homepage.logo()

        # Load My Account Page
        self.myaccount = MyAccountPage(self.homepage.driver)

        # Execute Remove Wishlist
        self.myaccount.remove_wishlist()

        time.sleep(5)