Exemplo n.º 1
0
class Test_001_Login:
    baseURL = ReadConfig.getApplicationURL()
    username = ReadConfig.getUsername()
    password = ReadConfig.getPassword()
    logger = LogGen.getLogger()

    @pytest.mark.regression
    def test_homePageTitle(self, setup):
        self.logger.info("############## test_homePageTitle ####################")
        self.logger.info("############## Verify home page title ####################")
        self.driver = setup
        self.driver.get(self.baseURL)
        act_title = self.driver.title
        if act_title == "Your store. Login":
            assert True
            self.driver.close()
            self.logger.info("############## homePageTitle test is passed####################")
        else:
            self.driver.save_screenshot(".\\Screenshots\\" + "test_homePageTitle.png")
            self.driver.close()
            self.logger.error("############## homePageTitle test is failed####################")
            assert False

    @pytest.mark.sanity
    @pytest.mark.regression
    def test_login(self, setup):
        self.logger.info("############## Verifying login test####################")
        self.driver = setup
        self.driver.get(self.baseURL)
        self.lp = LoginPage(self.driver)
        self.lp.setField(self.lp.email_id, self.username)
        self.lp.setField(self.lp.password_id, self.password)
        self.lp.clickOn(self.lp.login_xpath).click()
        home_title = self.driver.title
        if home_title == "Dashboard / nopCommerce administration":
            assert True
            self.logger.info("############## login test is passed####################")
            self.driver.close()
        else:
            self.driver.save_screenshot(".\\Screenshots\\" + "test_login.png")
            self.driver.close()
            self.logger.error("############## login test is failed####################")
            assert False
Exemplo n.º 2
0
class TestCommerce_03_AddCustomer:
    baseURL = ReadConfig.getApplicationURL()
    username = ReadConfig.getUsername()
    password = ReadConfig.getPassword()
    logger = LogGen.getLogger()

    @pytest.mark.sanity
    def test_AddNewCustomer(self, setup):
        self.logger.info(
            "############## Verifying login test####################")
        self.driver = setup
        self.driver.get(self.baseURL)
        self.lp = LoginPage(self.driver)
        self.lp.setField(self.lp.email_id, self.username)
        self.lp.setField(self.lp.password_id, self.password)
        self.lp.clickOn(self.lp.login_xpath).click()
        home_title = self.driver.title
        self.logger.info(home_title)
        self.homePage = HomePage(self.driver)
        self.homePage.clickOn(self.homePage.customer_menu_xpath).click()
        self.homePage.clickOn(self.homePage.customerButton_xpath).click()
        self.homePage.clickOn(self.homePage.add_button_xpath).click()
        time.sleep(3)
        self.logger.info("********* Entered Add customer Page ****  *****")
        self.email = random_generator() + "@gmail.com"
        self.homePage.setField(self.homePage.txtboxEmail_xpath, self.email)
        self.homePage.setField(self.homePage.txtboxPassword_xpath,
                               "kushal@123")
        self.homePage.setField(self.homePage.txtboxFirstName_xpath, "vini")
        self.homePage.setField(self.homePage.txtboxLastName_xpath, "tp")
        self.homePage.setGender("Male")
        self.homePage.get_DatePicker("May", "2000", "25")
        # self.homePage.setDOB("3/1/2021")
        self.homePage.setField(self.homePage.txtboxCompany_xpath,
                               "Tata Consultancy Services Limited")
        self.homePage.clickOn(self.homePage.cbTaxExempt_xpath).click()
        self.homePage.setField(self.homePage.txtAdminComment_xpath,
                               "Kushal is our god")
        self.homePage.setManagerOfVender("Vendor 1")
        self.homePage.setCustomerRoles("Vendors")
        time.sleep(3)
        self.homePage.clickOn(self.homePage.btnSave_xpath).click()
        time.sleep(3)
        self.msg = self.driver.find_element_by_tag_name("body").text
        print(self.msg)

        if 'customer has been added successfully.' in self.msg:
            assert True
            self.driver.close()
            self.logger.info("********* Add customer Test Passed *********")
        else:
            self.driver.save_screenshot(
                ".\\Screenshots\\" + "test_addCustomer_scr.png")  # Screenshot
            self.logger.info("********* Add customer Test Failed ************")
            self.driver.close()
            assert False
        self.logger.info("******* Ending Add customer test **********")

    def test_e2e(self, setup):
        self.driver = setup
        self.logger.info("New Login")
        self.loginPage = LoginPage(self.driver)
        self.logger.info("Entering into Green Kart website")
        self.logger.info(self.driver.title)
        self.driver.get(self.baseURL)
        self.loginPage = LoginPage(self.driver)
        self.loginPage.setField(self.loginPage.email_id, self.username)
        self.loginPage.setField(self.loginPage.password_id, self.password)
        self.loginPage.clickOn(self.loginPage.login_xpath).click()
        time.sleep(3)
        self.logger.info(self.driver.title)
        time.sleep(3)
        self.loginPage.click_logout()
        self.driver.close()
Exemplo n.º 3
0
class Test_002_DDT_Login:
    baseURL = ReadConfig.getApplicationURL()
    path = ".//TestData/LoginData.xlsx"
    logger = LogGen.loggen()

    @pytest.mark.regression
    def test_login_ddt(self, setup):
        self.logger.info("******* Starting Test_002_DDT_Login Test **********")
        self.logger.info("******* Starting Login DDT Test **********")
        self.driver = setup
        self.driver.get(self.baseURL)
        self.driver.maximize_window()
        self.lp = LoginPage(self.driver)

        self.rows = XLUtils.getRowCount(self.path, 'Sheet1')
        print('Number of rows in a excel:', self.rows)

        lst_status = []
        for r in range(2, self.rows + 1):
            self.user = XLUtils.readData(self.path, 'Sheet1', r, 1)
            self.password = XLUtils.readData(self.path, 'Sheet1', r, 2)
            self.exp = XLUtils.readData(self.path, 'Sheet1', r, 3)

            self.lp.setField(self.lp.email_id, self.user)
            self.lp.setField(self.lp.password_id, self.password)
            self.lp.clickOn(self.lp.login_xpath).click()
            time.sleep(5)

            act_title = self.driver.title
            exp_title = "Dashboard / nopCommerce administration"

            if act_title == exp_title:
                if self.exp == 'Pass':
                    self.logger.info("**** passed ****")
                    self.lp.click_logout()
                    lst_status.append("Pass")
                elif self.exp == 'Fail':
                    self.logger.info("**** failed ****")
                    self.lp.click_logout()
                    lst_status.append("Fail")

            elif act_title != exp_title:
                if self.exp == 'Pass':
                    self.logger.info("**** failed ****")
                    lst_status.append("Fail")
                elif self.exp == 'Fail':
                    self.logger.info("**** passed ****")
                    lst_status.append("Pass")
            print(lst_status)
        if "Fail" not in lst_status:
            self.logger.info("******* DDT Login test passed **********")
            self.driver.close()
            assert True
        else:
            self.logger.error("******* DDT Login test failed **********")
            self.driver.close()
            assert False

        self.logger.info("******* End of Login DDT Test **********")
        self.logger.info(
            "**************** Completed  TC_LoginDDT_002 ************* ")