Esempio n. 1
0
class Test_002_Login:

    baseURL = ReadConfig.getApplicationURL()
    logger = LogGen.loggen()
    path = '.\\TestData\\OrangeLoginData.xlsx'
    lst_status = []

    def test_login(self, setup):

        self.driver = setup
        self.logger.info("*********** Starting TEST_002_Login_DDT ***********")
        self.logger.info(
            "************ Opening OrangeHRM Application ************")
        self.driver.get(self.baseURL)
        self.driver.maximize_window()
        self.logger.info(
            "***** Checking the Login Functionality with multiple users *****")
        self.lp = LoginPage(self.driver)
        self.rows = ExcelUtils.getRowCount(self.path, "Sheet1")
        for r in range(2, self.rows + 1):
            self.logger.info("***** Entering " + str(r - 1) +
                             " UserName *****")
            self.lp.setUserName(ExcelUtils.readData(self.path, "Sheet1", r, 1))
            self.logger.info("***** Entering Password *****")
            self.lp.setPassword(ExcelUtils.readData(self.path, "Sheet1", r, 2))
            self.logger.info("***** Clicking on Login Button *****")
            self.lp.clickLogin()
            time.sleep(2)
            act_url = self.driver.current_url
            self.expected_condition = ExcelUtils.readData(
                self.path, "Sheet1", r, 3)

            if act_url == "https://opensource-demo.orangehrmlive.com/index.php/dashboard":
                if self.expected_condition == "Pass":
                    self.logger.info(
                        "***** Expected Condition met successfully *****")
                    self.lst_status.append("Pass")
                    self.lp.clickLogout()

                elif self.expected_condition == "Fail":
                    self.logger.info("***** Expected Condition not met *****")
                    self.lst_status.append("Fail")
                    self.lp.clickLogout()

            elif act_url != "https://opensource-demo.orangehrmlive.com/index.php/dashboard":
                if self.expected_condition == "Pass":
                    self.logger.info("***** Failed *****")
                    self.driver.save_screenshot(
                        "C:\\Users\\Salim\\eclipse-workspace\\orangeHRM\\Screenshots\\"
                        + "LoginFailed" + str(r - 1) + ".png")
                    self.logger.info(
                        "***** Login Failed, Please check the Screenshots Folder *****"
                    )
                    self.lst_status.append("Fail")

                elif self.expected_condition == "Fail":
                    self.logger.info(
                        "***** Expected Condition met successfully *****")
                    self.lst_status.append("Pass")

        if "Fail" not in self.lst_status:
            self.logger.info("***** Login DDT test passed *****")
            self.driver.close()
            self.logger.info("***** Closing Browser *****")
            assert True

        else:
            self.logger.info("***** Login DDT test failed *****")
            self.logger.info("***** Closing Browser *****")
            self.driver.close()
            assert False

        self.logger.info(
            "*********** Completed TEST_002_Login_DDT ***********")
        self.logger.info("***** End of TEST_002_Login_DDT *****")
Esempio n. 2
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("************* Test_002_DDT_Login Started *******")
        self.logger.info("************* Verifying test_login_ddt Test Case *******")

        self.driver=setup
        self.driver.get(self.baseURL)

        self.lp=LoginPage(self.driver)

        self.rows=XLUtils.getRowCount(self.path,'Sheet1')
        self.logger.info("The row counts is %s",self.rows)

        list_status=[]  # Empty list variable

        for r in range (2,self.rows+1):

            self.username=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.logger.info('username is %s',self.username)
            self.logger.info('password is %s',self.password)
            self.logger.info('expected result is %s',self.exp)

            time.sleep(5)
            self.lp.setUserName(self.username)
            self.lp.setPassword(self.password)
            self.lp.clickLogin()
            time.sleep(5)

            actual_title=self.driver.title
            exp_title="Salesforce - Unlimited Edition"

            if actual_title==exp_title:
                self.logger.info("************* Login Is successful due to Correct credentials *******")
                if self.exp=="Pass":
                    self.logger.info("*******Test Data sheet expected given as Pass So the test also passed *******")
                    self.lp.clickLogout()
                    list_status.append("Pass")

                elif self.exp=="Fail":
                    self.logger.info("************* Test Data sheet expected given as Fail rather than Pass *******")
                    self.lp.clickLogout()
                    list_status.append("Fail")

            elif actual_title != exp_title:
                self.logger.info("************* Login Failed due to incorrect credentials *******")
                if self.exp=="Pass":
                    self.logger.info("************* Test Data sheet expected given as Pass rather than Fail *******")
                    list_status.append("Fail")

                elif self.exp=="Fail":
                    self.logger.info("****** Test Data sheet expected given as Fail So the test also passed *******")
                    list_status.append("Pass")

        self.logger.info("The status in the list are: ")
        for item in list_status:
            self.logger.info(item)

        if "Fail" not in list_status:
            self.logger.info("*** Login DDT test is passed ***")
            assert True
        else:
            self.logger.info("*** Login DDT test is Failed ***")
            assert False

        self.logger.info("*** End of Verifying test_login_ddt ***")
        self.logger.info("*** Completed Test_002_DDT_Login ***")
class Test_003_AddCustomer:
    baseURL = ReadConfig.getApplicationURL()
    username = ReadConfig.getUseremail()
    password = ReadConfig.getPassword()
    logger = LogGen.loggen()

    @pytest.mark.sanity
    def test_addCustomer(self, setup):
        self.logger.info("******* Test_003_AddCustomer *****")
        self.driver = setup
        self.driver.get(self.baseURL)
        self.driver.maximize_window()

        self.lp = LoginPage(self.driver)
        self.lp.setUserName(self.username)
        self.lp.setPassword(self.password)
        self.lp.clickLogin()

        self.logger.info("***** Login Successfully *****")
        self.logger.info("***** Starting Add Customer Test *****")

        self.addcust = AddCustomer(self.driver)
        self.addcust.clickOnCustomerMenu()
        self.addcust.clickOnCustomerMenuItem()

        self.addcust.clickOnAddnew()

        self.logger.info("***** Providing Customer Details *****")

        self.email = random_generator() + "@gmail.com"
        self.addcust.setEmail(self.email)
        self.addcust.setPassword("smd@li9916")
        self.addcust.setFirstname("Mohammad")
        self.addcust.setLastname("Ali")
        self.addcust.setGender("Male")
        self.addcust.setDob("7/05/1987")
        self.addcust.setCompanyName("TechMahindra")
        #self.addcust.setNewsLetter("Test store 2")
        self.addcust.setCustomerRoles("Registered")
        self.addcust.setManagerOfVendor("Vendor 2")
        self.addcust.setAdminContent(
            "This is for Testing Requirement ---------")
        self.addcust.clickOnSave()

        self.logger.info("***** Saving Customer Details *****")
        self.logger.info("***** Add Customer Validation Details *****")

        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 == True
            self.logger.info("***** Add Customer Test Pass *****")
        else:
            self.driver.save_screenshot(".\\Screenshots\\" +
                                        "test_addcustomer_scr.png")
            self.logger.error("***** Add Customer Test Failed *****")
            assert True == False

        self.driver.close()
        self.logger.info("***** Ending Test_003_AddCustomer Test *****")
class Test_002_DDT_Login():
    baseURL = ReadConfig.getApplicationURL()
    path = ".//TestData/LoginData.xlsx"
    logger = LogGen.loggen()  # Logger

    @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...', 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.setUserName(self.user)
            self.lp.setPassword(self.password)
            self.lp.clickLogin()
            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.clickLogout()
                    lst_status.append("Pass")
                elif self.exp == 'Fail':
                    self.logger.info("**** failed ****")
                    self.lp.clickLogout()
                    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 ************* ")


#pytest -v -s testCases\test_login_ddt.py
Esempio n. 5
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(
            "**************** Test_002_DDT_Login ****************")
        self.logger.info(
            "**************** Verifying Login DDT Test ****************")
        self.driver = setup
        self.driver.get(self.baseURL)

        self.lp = LoginPage(self.driver)

        self.rows = XLUtils.getRowCount(self.path, 'Sheet1')
        print("Number of rows i a Excel:", self.rows)

        list_status = []  # Empty list variables

        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.setUserName(self.user)
            self.lp.setPassword(self.password)
            self.lp.clickLogin()
            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.clickLogout()
                    list_status.append("Pass")
                elif self.exp == "Fail":
                    self.logger.info("*** Failed ***")
                    self.lp.clickLogout()
                    list_status.append("Fail")
            elif act_title != exp_title:
                if self.exp == "Pass":
                    self.logger.info("*** Failed ***")
                    list_status.append("Fail")
                elif self.exp == "Fail":
                    self.logger.info("*** Passed ***")
                    list_status.append("Pass")

        if "Fail" not in list_status:
            self.logger.info("*** Login DDT Test passed ***")
            self.driver.close()
            assert True
        else:
            self.logger.info("*** Login DDT Test passed ***")
            self.driver.close()
            assert False

        self.logger.info("******** End of Login DDT Test ********")
        self.logger.info("******** Completed Test_002_DDT_Login ********")
Esempio n. 6
0
class Test_001_Login:

    baseURL = ReadConfig.getApplicationURL()
    username = ReadConfig.getUsername()
    password = ReadConfig.getPassword()

    logger = LogGen.loggen()

    def test_homePageTitle(self, setup):

        self.driver = setup
        self.logger.info("**********Starting Test_001_Login**********")
        self.logger.info("********** WebTitle Test Started ***********")
        self.logger.info("***** Launching Browser *****")
        self.driver.get(self.baseURL)
        self.driver.maximize_window()
        self.logger.info("***** Checking the Title of the WebPage *****")
        act_title = self.driver.title
        if act_title == "OrangeHRM":
            self.logger.info(
                "***** Congrats!! Title is matching, Closing Browser *****")
            self.driver.close()
            assert True
        else:
            self.driver.save_screenshot(
                "C:\\Users\\Salim\\eclipse-workspace\\orangeHRM\\Screenshots\\"
                + "test_homePageTitle.png")
            self.logger.info(
                "***** OOPS!! Title is not matching, Closing Browser *****")
            self.driver.close()
            assert False

    def test_login(self, setup):

        self.driver = setup
        self.logger.info(
            "************ Opening OrangeHRM Application ************")
        self.driver.get(self.baseURL)
        self.driver.maximize_window()
        self.logger.info("***** Checking the Login Functionality *****")
        self.lp = LoginPage(self.driver)
        time.sleep(2)
        self.logger.info("***** Entering UserName *****")
        self.lp.setUserName(self.username)
        self.logger.info("***** Entering Password *****")
        self.lp.setPassword(self.password)
        self.logger.info("***** Clicking on Login Button *****")
        self.lp.clickLogin()
        act_url = self.driver.current_url

        if act_url == "https://opensource-demo.orangehrmlive.com/index.php/dashboard":
            self.logger.info("***** Logged in Successfully *****")
            self.lp.clickLogout()
            self.logger.info("***** Closing Browser *****")
            self.driver.close()
            assert True
        else:
            self.driver.save_screenshot(
                "C:\\Users\\Salim\\eclipse-workspace\\orangeHRM\\Screenshots\\"
                + "LoginFailed.png")
            self.logger.info(
                "***** Login Failed, Please check the Screenshots Folder *****"
            )
            self.driver.close()
            self.logger.info("***** Closing Browser *****")
            assert False
class Test_002_DDT_Login:

    baseurl = ReadConfig.getAppURL()
    path = ".//testData/LoginData.xlsx"
    logger = LogGen.loggen()

    @pytest.mark.regression
    def test_login(self, setup):
        self.logger.info("**Test_002_DDT_Login**")
        self.logger.info("**Verify The Login DDT function**")
        self.driver = setup
        self.driver.get(self.baseurl)
        self.lp = LoginPage(self.driver)

        self.rows = XLUtils.getRowCount(self.path, 'Sheet1')

        # List variable to capture to results of the test

        lst_status = []  # Empty list variable

        for r in range(2, self.rows + 1):
            self.username = XLUtils.readData(self.path, 'Sheet1', r, 1)
            self.password = XLUtils.readData(self.path, 'Sheet1', r, 2)
            self.expected = XLUtils.readData(self.path, 'Sheet1', r, 3)

            self.lp.setUserName(self.username)
            self.lp.setPassword(self.password)
            self.lp.clickLogin()
            time.sleep(2)

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

            if act_title == exp_tile:
                if self.expected == "Pass":
                    self.logger.info("***Test Passed***" + self.username)
                    self.lp.clickLogout()
                    lst_status.append("Pass")
                elif self.expected == "Fail":
                    self.logger.error("***Test Failed***" + self.username)
                    self.lp.clickLogout()
                    lst_status.append("Fail")
            elif act_title != exp_tile:
                if self.expected == "Pass":
                    self.logger.error("***Test Failed***" + self.username)
                    lst_status.append("Fail")
                elif self.expected == "Fail":
                    self.logger.info("***Test Passed***" + self.username)
                    lst_status.append("Pass")

        if "Fail" not in lst_status:
            self.logger.info("***Login DDT Test Passed***")
            self.driver.close()
            assert True
        else:
            self.logger.error("***Login DDT Test Failed***")
            self.driver.close()
            assert False

        self.logger.info("***End of DDT Test**")
        self.logger.info("***Completed the Test ***")
Esempio n. 8
0
class Test_002_DDT_Login:
    # df = pd.read_excel(r'C:\Users\yunus\OneDrive\Belgeler\Downloads\LoginData.xlsx',sheet_name='Sheet1')
    # print(df)
    baseURL = ReadConfig.getApplicationURL()
    path = ".//TestData/LoginData.xlsx"
    username = ReadConfig.getUseremail()
    password = ReadConfig.getPassword()

    logger = LogGen.loggen()

    def test_login_ddt(self, setup):
        self.logger.info("***************** Test_002_DDT_Login **************")
        self.logger.info(
            "***************** Verifying Login test **************")
        self.driver = setup
        self.driver.get(self.baseURL)

        self.lp = LoginPage(self.driver)

        self.rows = XLUtils.getRowCount(self.path, 'Sheet1')
        print("Number of Rows is a Excel:", self.rows)

        lst_status = []  # Empty list
        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.setUserName(self.user)
            self.lp.setPassword(self.password)
            self.lp.clickLogin()
            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.clickLogout()
                    lst_status.append("Pass")
                elif self.exp == "Fail":
                    self.logger.info("*** Failed ***")
                    self.lp.clickLogout()
                    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")

        if "Fail" not in lst_status:
            self.logger.info("**** Login DDT test passed ****")
            self.driver.close()
            assert True
        else:
            self.logger.info("**** Login DDT test failed ****")
            self.driver.close()
            assert False

        self.logger.info("**** End of Login DDT Test ****")
        self.logger.info("**** Completed TC_LoginDDT_002 ****")
Esempio n. 9
0
class Test_003_AddCustomer():
    baseURL = ReadConfig.getApplicationURL()
    username = ReadConfig.getUsername()
    password = ReadConfig.getPassword()
    logger = LogGen.test_loggen()

    @pytest.mark.sanity
    @pytest.mark.regression
    def test_addCustomer(self, setup):
        self.logger.info(
            "******************** Test_003_AddCustomer **********************")
        self.driver = setup
        self.driver.get(self.baseURL)
        self.driver.maximize_window()

        self.lp = LoginPage(self.driver)
        self.lp.setUserName(self.username)
        self.lp.setPassword(self.password)
        self.lp.clickLogin()
        self.logger.info(
            "******************** Logged in **********************")
        self.driver.implicitly_wait(5)

        self.addCust = CreateCustomer(self.driver)
        self.addCust.clickCustomerMenu()
        self.addCust.clickCustomerMenuItem()
        time.sleep(5)
        self.logger.info(
            "******************* Customer page opened *********************")
        self.addCust.clickAddnewButton()
        self.driver.implicitly_wait(5)
        self.logger.info(
            "********************* Add a new customer page opened********************************"
        )
        self.logger.info(
            "********************* Start entering the values ********************************"
        )
        self.email = random_generator() + "@gmail.com"
        self.addCust.setEmail(self.email)
        self.addCust.setPassword("root")
        self.addCust.setDate("12/10/2020")
        self.addCust.selectGender("male")
        self.addCust.setAdminComment("admin")
        self.addCust.setCompanyName("company")
        self.addCust.setCustomerRoles("Vendors")
        self.addCust.setFirstName("Amit")
        self.addCust.setlastName("Shah")
        self.addCust.setManagerOfVendor("1")
        self.logger.info(
            "********************* End entering the values ********************************"
        )
        self.addCust.clickSave()
        self.logger.info(
            "********************* start Validation ********************************"
        )
        self.msg = self.driver.find_element_by_tag_name("body").text
        if 'customer has been added successfully.' in self.msg:
            self.driver.save_screenshot(".\\Screenshots\\" +
                                        "test_addCustomer_scr.png")
            assert True
            self.logger.info("********* Add customer Test Passed *********")
        else:
            self.driver.save_screenshot(
                ".\\Screenshots\\" + "test_addCustomer_scr.png")  # Screenshot
            self.logger.error(
                "********* Add customer Test Failed ************")
            assert False

        self.driver.close()
        self.logger.info("******* Ending Add customer test **********")
class Test_003_AddCustomer:
    baseURL = ReadConfig.getApplicationURL()
    username = ReadConfig.getUserEmail()
    password = ReadConfig.getPassword()

    logger = LogGen.loggen()

    @pytest.mark.sanity
    def test_addcustomer(self, setUp):
        self.logger.info("Test_003_AddCustomer")
        self.driver = setUp
        self.driver.get(self.baseURL)
        self.driver.maximize_window()

        self.lp = LoginPage(self.driver)
        self.lp.setUserName(self.username)
        self.lp.setPassword(self.password)
        self.lp.clickLogin()
        self.logger.info("Login successful")

        self.logger.info("starting add customer page")

        self.addcust = AddCustomer(self.driver)
        self.addcust.clickOnCustomersMenu()
        self.addcust.clickOnCustomerMenuItem()

        self.addcust.clickOnAddNew()

        self.logger.info("providing customer info")

        self.email = random_generator() + "@gmail.com"
        self.addcust.setUserEmail(self.email)
        self.addcust.setPassword("test123")
        self.addcust.setFirstName("Divya")
        self.addcust.setLastName("Khosla")
        self.addcust.setDOB("09/03/1988")
        self.addcust.setCustomerRoles("Guests")
        self.addcust.setCompany("QABee")
        self.addcust.setGender("Female")
        self.addcust.selectVendorManager("Vendor 2")
        self.addcust.setAdminComment("this is for testing add customer module")
        self.addcust.clickOnSave()

        self.logger.info("Save customer info")

        self.logger.info("Validating the data")

        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 == True
            self.logger.info("Customer test passed")
        else:
            self.driver.save_screenshot(
                "C:\\Users\\gladi\\PycharmProjects\\SeleniumHybridFrameworkPytest\\Screenshots\\"
                + "test_addCustomer_scr.png")
            self.logger.info("add customer test failed")
            assert True == False

        self.driver.close()
        self.logger.info("End of add customer page")
Esempio n. 11
0
class Test_002_DDT_Login:
    baseURL = ReadConfig.getApplicationURL() # Getting the URL from ini file and readProperties
    path = "./TestData/LoginData.xlsx"   # Specify the path for the xl data
    logger = LogGenerator.logGen()

    # Verifying LoginPage Test
    @pytest.mark.regression
    def test_DDT_loginPage(self, setup):
        self.logger.info("******* Test_002__DDT_Login *******")
        self.logger.info("******** Verifying Login DDT test ******")
        self.driver = setup
        self.driver.get(self.baseURL)

        # Create an Object of LoginPage
        self.login = LoginPage(self.driver)

        self.rows = ExcelUtils.getRowCount(self.path, 'Sheet1')
        print("Number of Rows in the Excel:", self.rows)

        list_status = []  # Empty list

        # 2 specifies the 2nd row in the excel sheet
        # rows+1 specifies the number of rows + the last row
        for r in range(2, self.rows+1):
            self.user = ExcelUtils.readData(self.path, 'Sheet1', r, 1)
            self.userPassword = ExcelUtils.readData(self.path, 'Sheet1', r, 2)
            self.expected = ExcelUtils.readData(self.path, 'Sheet1', r, 3)

            self.login.setUsername(self.user)
            self.login.setPassword(self.userPassword)
            self.login.clickLogin()

            # Getting the title of the page
            act_title = self.driver.title
            exp_tile = "Dashboard / nopCommerce administration"

            # comparing if actual title is equal to expected title
            if act_title == exp_tile:
                if self.expected == "Pass":  # checking if exp matches xl data "pass"
                    self.logger.info("****** Pass *****")
                    time.sleep(5)
                    self.login.clickLogout();
                    list_status.append("Pass")
                elif self.expected == "Fail":  # checking if exp matches xl data "pass"
                    self.logger.info("***** failed *****")
                    time.sleep(3)
                    self.login.clickLogout();
                    list_status.append("Fail")
            elif act_title != exp_tile:
                if self.expected == "Pass":
                    self.logger.info("***** failed ******")
                    list_status.append("Fail")
                elif self.expected == "Fail":
                    self.logger.info("**** Passed ******")
                    list_status.append("Pass")

        if "Fail" not in list_status:
            self.logger.info("***** Login DDT test passed ******")
            self.driver.close()
            assert True
        else:
            self.logger.info("***** Login DDT test failed *****")
            self.driver.close()
            assert False

        self.logger.info("******* End of Login DDT Test ******")
        self.logger.info("******* Completed TC_LoginDDT_002 *******")
class Test_003_AddCustomer:
    baseURL = ReadConfig.getApplicationURL()
    username = ReadConfig.getUseremail()
    password = ReadConfig.getPassword()
    logger = LogGen.loggen()

    @pytest.mark.sanity
    def test_addCustomer(self, setup):
        self.logger.info("*********Test_003_AddCustomer************ ")
        self.driver = setup
        self.driver.get(self.baseURL)
        self.driver.maximize_window()

        self.lp = LoginPage(self.driver)
        self.lp.setUserName(self.username)
        self.lp.setPassword(self.password)
        self.lp.clickLogin()
        self.logger.info("**********Login Successful********")

        self.logger.info("**********Starting Add Customer Test*************")

        self.addcust = AddCustomer(self.driver)
        self.addcust.clickOnCustomersMenu()
        self.addcust.clickOnCustomersMenuItem()
        time.sleep(3)
        self.addcust.clickOnAddnew()

        self.logger.info("***********8 Provinding Customer Info**********")
        time.sleep(3)
        self.email = random_generator() + "@gmail.com"
        self.addcust.setEmail(self.email)
        self.addcust.setPassword("test123")
        time.sleep(3)
        self.addcust.setCustomerRoles("Vendors")
        time.sleep(3)
        self.addcust.setManagerOfVendor("Vendor 2")
        self.addcust.setGender("Female")
        self.addcust.setFirstName("Sivapriya")
        self.addcust.setLastName("Manikandan")
        self.addcust.setDob("10/20/1987")
        self.addcust.setCompanyName("Home")
        self.addcust.setAdminContent("..... This is for Testing........")
        self.addcust.clickOnSave()

        self.logger.info("************ Saving customer info**********")

        self.logger.info(
            "*********** Add customer validation started*************")

        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 == True
            self.logger.info("********** Add customer Test Passed**********")
        else:
            self.driver.save_screenshot(".\\Screenshots\\" +
                                        "test_addCustomer_scr.png")
            self.logger.error("******** Add customer Test Failed ********")
            assert True == False

        self.driver.close()
        self.logger.info("***** Ending Test_003_AddCustomer Test *********")
class Test_Login_002_DDT:
    base_url = ReadConfig.getApplicationUrl()
    path = ".//TestData/LoginData.xlsx"
    username = ReadConfig.getUsername()
    password = ReadConfig.getPassword()

    logger = LogGen.log_gen()

    @pytest.mark.regression
    def test_login_ddt(self, setup):
        self.logger.info("*************** Test_Login_002_DDT *************")
        self.logger.info(
            "*************** Verifying the Login test *************")
        self.driver = setup
        self.driver.get(self.base_url)

        self.lp = LoginPage(self.driver)
        lst_status = []

        rows = ExcelUtils.getRowCount(self.path, 'Sheet1')
        print('No. of rows in the Sheet1: ', rows)

        for r in range(2, rows + 1):
            username = ExcelUtils.readData(self.path, "Sheet1", r, 1)
            password = ExcelUtils.readData(self.path, "Sheet1", r, 2)
            expected_result = ExcelUtils.readData(self.path, "Sheet1", r, 3)
            self.lp.setUsername(username)
            self.lp.setPassword(password)
            self.lp.clickLogin()
            time.sleep(5)

            act_title = self.driver.title

            if act_title == 'Dashboard / nopCommerce administration':
                if expected_result == "Pass":
                    assert True
                    self.logger.info(
                        "*************** Login test is passed *************")
                    self.lp.clickLogout()
                    lst_status.append("Pass")
                elif expected_result == "Fail":
                    self.logger.info(
                        "*************** Login test is failed *************")
                    self.lp.clickLogout()
                    lst_status.append("Fail")
                elif act_title != 'Dashboard / nopCommerce administration':
                    if expected_result == 'Pass':
                        self.logger.info(
                            "*************** Login test is failed *************"
                        )
                        lst_status.append("Fail")
                    elif expected_result == "Fail":
                        self.logger.info(
                            "*************** Login test is Passed} *************"
                        )
                        lst_status.append("Pass")

        if "Fail" not in lst_status:
            self.logger.info("Login DDT is passsed............")
            self.driver.close()
            assert True
        else:
            self.logger.info("Login DDT is failed............")
            self.driver.close()
            assert False

        self.logger.info(" End of Login DDT test")
        self.logger.info(" Completed TC_LoginDDT_002")
Esempio n. 14
0
class Test_002_DDT_Login:
    # Config.ini -> Utilities -> Read common properties
    # If config info is change, please update in config.ini file
    baseURL = ReadConfig.getApplicationURL()
    path = "./TestData/LoginData.xlsx"
    # username = ReadConfig.getUseremail()
    # password = ReadConfig.getPassword()
    logger = LogGen.loggen()

    @pytest.mark.regression
    def test_login_ddt(self, setup):
        self.logger.info(
            "**************** Test_002_DDT_Login ****************")
        self.logger.info(
            "**************** Verifying Login DDT test ****************")
        self.driver = setup
        self.driver.get(self.baseURL)

        self.lp = LoginPage(self.driver)
        # Get the data from excel file

        self.rows = XLUtils.getRowCount(self.path, 'Sheet1')
        print("Number of Rows i a Excel:", self.rows)

        lst_status = []  # empty list variable
        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.setUserName(self.user)
            self.lp.setPassword(self.password)
            self.lp.clickLogin()
            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.clickLogout()
                    lst_status.append("Pass")
                elif self.exp == "Fail":
                    self.logger.info("*** Failed ***")
                    self.lp.clickLogout()
                    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")
        if "Fail" not in lst_status:
            self.logger.info("**** Login DDT Test passed.....^__^ **** ")
            self.driver.close()
            assert True
        else:
            self.logger.info("**** Login DDT Test Failed **** .....")
            self.driver.close()
            assert False
        print(lst_status)
        self.logger.info("******** End of Login DDT Test *********")
        self.logger.info("******** Completed TC_LoginDDT_002 *********")
Esempio n. 15
0
class Test_002_Login_DDT:
    baseURL = ReadConfig.getApplicationUrl()
    path = ".//TestData/LoginData.xlsx"
    logger = LogGen.loggen()

    @pytest.mark.regression
    def testLogin_ddt(self, setUp):
        self.logger.info("****************Test_002_Login_DDT*****************")
        self.logger.info(
            "****************Verifying testLogin_ddt*****************")
        self.driver = setUp
        self.driver.get(self.baseURL)
        self.lp = LoginPage(self.driver)

        # To read no. of rows from excel
        self.rows = XLUtils.getRowCount(self.path, 'Sheet1')
        print("No. of rows in excel:", self.rows)

        Empty_list = []
        for r in range(2, self.rows + 1):
            self.excel_username = XLUtils.readData(
                self.path, 'Sheet1', r,
                1)  # 1 represent column 1 that is username in excel
            self.excel_password = XLUtils.readData(
                self.path, 'Sheet1', r,
                2)  # It will read password column and will return passwords
            self.Expected_Result = XLUtils.readData(
                self.path, 'Sheet1', r,
                3)  # It represent 3 column in excel that is status column

        # Call setUsername method from LoginPage.py and pass username and password from excel
        self.lp.setUsername(self.excel_username)
        self.lp.setPassword(self.excel_password)
        self.lp.clickLogin()
        time.sleep(5)

        act_title = self.driver.title
        exp_title = "Dashboard / nopCommerce administration"
        if act_title == exp_title:
            if self.Expected_Result == "Pass":
                self.logger.info(
                    "******************Test is passed for ddt**********************"
                )
                self.lp.clickLogout()
                Empty_list.append("Pass")

            elif self.Expected_Result == "Fail":
                self.logger.info(
                    "************************Test is Failed for ddt**************************"
                )
                self.lp.clickLogout()
                Empty_list.append("Fail")

        elif act_title != exp_title:
            if self.Expected_Result == "Pass":
                self.logger.info(
                    '**********************est is Failed for ddt****************************'
                )
                Empty_list.append("Fail")

            elif self.Expected_Result == "Fail":
                self.logger.info(
                    '***************************Test is passed for ddt******************************'
                )
                Empty_list.append('Pass')

        if "Fail" not in Empty_list:
            self.logger.info(
                "********************Test_002_Login_DDT is passed**********************"
            )
            self.driver.close()
            assert True
        else:
            self.logger.info(
                "********************Test_002_Login_DDT is failed**********************"
            )
            self.driver.close()
            assert False
Esempio n. 16
0
class Test_003_AddCustomer:
    baseURL = ReadConfig.getApplicationURL()
    username = ReadConfig.getUserEmail()
    password = ReadConfig.getPassword()
    logger = LogGen.loggen()

    @pytest.mark.sanity
    def test_addCustomer(self, setup):
        self.logger.info("************** Test_003_AddCustomer **************")
        self.driver = setup
        self.driver.get(self.baseURL)
        self.driver.maximize_window()

        self.lp = LoginPage(self.driver)
        self.lp.setUsername(self.username)
        self.lp.setPassword(self.password)
        self.lp.clickLogin()
        self.logger.info("************** Logging Successful **************")

        self.logger.info(
            "************** Starting Add Customer Test **************")

        self.addCust = AddCustomer(self.driver)
        self.addCust.clickOnCustomersMenu()
        self.addCust.clickOnCustomersMenuItem()

        self.addCust.clickOnAddnew()

        self.logger.info(
            "************** Providing Customer details **************")

        self.email = random_generator() + "@gmail.com"
        self.addCust.setEmail(self.email)
        self.addCust.setPassword('test123')
        self.addCust.setFirstName('Arijit')
        self.addCust.setLastName('Saha')
        self.addCust.setCustomerRoles('Guests')
        self.addCust.setManagerOfVendor('Vendor 2')
        self.addCust.setGender('Male')
        self.addCust.setDob('05/08/1987')
        self.addCust.setCompanyName("Arijit's Startup")
        self.addCust.setAdminContent('This is for testing .....')
        self.addCust.clickOnSave()
        self.logger.info(
            "************** Saving Customer details **************")

        self.logger.info(
            "************** Add Customer Validation **************")

        self.msg = self.driver.find_element_by_tag_name("body").text

        if 'customer has been added successfully.' in self.msg:
            self.logger.info(" Customer has been added Successfully")
            assert True
        else:
            self.driver.save_screenshot(".\\Screenshots\\" +
                                        "test_addCustomer.png")
            self.driver.close()
            self.logger.error(">>> Add Customer Validation Failed !!!!!!!!!!!")
            assert False

        self.driver.close()
        self.logger.info("******* Ending Add customer test **********")
class Test_002_DDT_Login:
    baseURL = ReadConfig.getApplicationURL()
    path = ".//TestData/LoginDataNew.xlsx"

    logger = LogGen.loggen()

    @pytest.mark.regression
    def test_ddt_login(self, setup):
        self.logger.info("******** Test_002_DDT_Login *********")
        self.logger.info("******** Verifying Login DDT Test *********")
        self.driver = setup
        self.driver.get(self.baseURL)

        self.lp = LoginPage(self.driver)

        # Get row counts
        self.rows = XLUtils.getRowCount(self.path, 'Sheet1')
        print("Number o f rows in a excel file", self.rows)

        # Empty  list variable
        list_status = []

        # Read excel file data
        for row in range(2, self.rows + 1):
            self.username = XLUtils.readData(self.path, 'Sheet1', row, 1)
            self.password = XLUtils.readData(self.path, 'Sheet1', row, 2)
            self.expResult = XLUtils.readData(self.path, 'Sheet1', row, 3)

            self.lp.setUserName(self.username)
            time.sleep(3)
            self.lp.setPassword(self.password)
            self.lp.clickLogin()
            time.sleep(3)
            #self.lp.clickDashboard()
            #time.sleep(3)

            # act_title = self.driver.title
            # exp_title = "OrangeHRM"

            act_text = self.lp.visibleText()
            exp_text = "Dashboard"

            if act_text == exp_text:
                if self.expResult == "Pass":
                    self.logger.info("Test Passed")
                    self.lp.clickLogout()
                    time.sleep(2)
                    self.lp.clickLogoutLink()
                    list_status.append("Pass")
                elif self.expResult == "Fail":
                    self.logger.info("Test Failed")
                    self.lp.clickLogout()
                    time.sleep(2)
                    self.lp.clickLogoutLink()
                    list_status.append("Fail")

            elif act_text != exp_text:
                if self.expResult == 'Pass':
                    self.logger.info("Test Failed")
                    list_status.append("Fail")
                elif self.expResult == 'Fail':
                    self.logger.info("Test Passed")
                    list_status.append("Pass")
            print(list_status)

        if "Fail" not in list_status:
            self.logger.info("Login DDT test passed")
            self.driver.close()
            assert True
        else:
            self.logger.info("Login DDT test failed")
            self.driver.close()
            assert False
class Test_003_AddCustomer:
    baseUrl = ReadConfig.getApplicationUrl()
    username = ReadConfig.getUsername()
    password = ReadConfig.getPassword()
    logger = LogGen.log_gen()

    @pytest.mark.sanity
    def test_addCustomer(self, setup):
        self.logger.info("********Test_003_AddCustomer")
        self.driver = setup
        self.driver.get(self.baseUrl)

        self.driver.maximize_window()

        self.lp = LoginPage(self.driver)
        self.lp.setUsername(self.username)
        self.lp.setPassword(self.password)
        self.lp.clickLogin()
        self.logger.info("********** Login Successful **********")

        self.logger.info("********** Starting Add Customer Test **********")
        self.addCust = AddCustomer(self.driver)
        self.addCust.clickOnCustomerMenu()
        time.sleep(3)
        self.addCust.clickOnCustomerMenuItem()
        self.addCust.clickOnAddNew()

        self.logger.info("********** Providing Customer Info **********")

        self.email = random_generator() + '@gmail.com'
        self.addCust.setEmail(self.email)
        self.addCust.setPassword('Test@123')
        self.addCust.setCustomerRoles('Guests')
        self.addCust.setManagerOfVendor("Vendor 2")
        self.addCust.setGender("Male")
        self.addCust.setFirstName("Rahul")
        self.addCust.setLastName("Singh")
        self.addCust.setDOB("11/09/1980")  #Format: 'DD/MM/YY'
        self.addCust.setCompanyName("QAautomation Testing Ltd.")
        self.addCust.setAdminComment(
            "This content is added for testing purpose")

        self.addCust.clickOnSave()

        self.logger.info(
            "*********** Saving Customer Information *************")

        self.logger.info(
            "********************* Add customer Validation Started **************"
        )

        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 == True
            self.logger.info(
                "************ Add customer Test Passed *************")
        else:
            self.driver.save_screenshot(
                ".\\ScreenShots\\" +
                "test_addCustomer_scr.png")  #screenshot with path +name
            self.logger.info(
                "************ Add customer Test Failed *************")
            assert True == False

        self.driver.close()
        self.logger.info("********* Test Add customer is done **********")
class Test_003_DDT_Login:
    baseURL = ReadConfig.getApplicationURL()
    path = ".//TestData//LoginData.xlsx"
    logger = LogGen.loggen()

    @pytest.mark.sanity
    def test_login_ddt(self, setup):
        self.logger.info("*************** Started Test_003_DDT_Login test ***********")
        self.driver=setup
        #self.driver = webdriver.Chrome()
        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....', self.rows)
        lst_status=[]

        for r in range(2,self.rows+1):
            self.username=XLUtils.readData(self.path, 'Sheet1', r,1) # user name
            self.password = XLUtils.readData(self.path, 'Sheet1', r, 2) # password
            self.exp = XLUtils.readData(self.path, 'Sheet1', r, 3) # expected



            self.lp.setUserName(self.username)
            self.lp.setPassword(self.password)
            self.lp.clickLogin()
            time.sleep(3)

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

            if act_title==exp_title: # Login Success
                if self.exp=='Pass':
                    self.logger.info('*****Passed*****')
                    self.lp.clickLogout()
                    lst_status.append("Pass")
                    assert True
                elif self.exp=='Fail':
                    self.logger.info('*****Failed*****')
                    self.lp.clickLogout()
                    lst_status.append("Failed")
                    assert False

            elif act_title!=exp_title: # Login is NOT Succesful
                if self.exp=='Pass':
                    self.logger.info('*****Failed*****')
                    lst_status.append("Failed")

                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("*************Finished Test_003_DDT_Login**************")
        self.logger.info("**************** Completed  TC_LoginDDT_003 ************* ")
class Test_003_AddCustomer:
    baseURL = ReadConfig.getApplicationURL()
    username = ReadConfig.getUsername()
    password = ReadConfig.getPassword()
    logger = LogGen.loggen()  # Logger

    @pytest.mark.sanity
    @pytest.mark.regression
    def test_addCustomer(self,setup):
        self.logger.info("************* Test_003_AddCustomer **********")
        self.driver=setup
        self.driver.get(self.baseURL)
        self.driver.maximize_window()

        # Used from LoginPage PageObject class.....
        self.lp = LoginPage(self.driver)
        self.lp.setUserName(self.username)
        self.lp.setPassword(self.password)
        self.lp.clickLogin()
        self.logger.info("************* Login succesful **********")




        self.logger.info("******* Starting Add Customer Test **********")

        self.addcust = AddCustomer(self.driver)
        self.addcust.clickOnCustomersMenu()
        time.sleep(5)
        self.addcust.clickOnCustomersMenuItem()

        self.addcust.clickOnAddnew()

        self.logger.info("************* Providing customer info **********")

        self.email = random_generator() + "@gmail.com"
        self.addcust.setEmail(self.email)
        self.addcust.setPassword("test123")
        self.addcust.setCustomerRoles("Guests")
        self.addcust.setManagerOfVendor("Vendor 2")
        self.addcust.setGender("Male")
        self.addcust.setFirstName("Pavan")
        self.addcust.setLastName("Kumar")
        self.addcust.setDob("7/05/1985")  # Format: D / MM / YYY
        self.addcust.setCompanyName("busyQA")
        self.addcust.setAdminContent("This is for testing.........")
        self.addcust.clickOnSave()

        self.logger.info("************* Saving customer info **********")

        self.logger.info("********* Add customer validation started *****************")

        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.logger.info("********* Add customer Test Passed *********")

        else:
            self.driver.save_screenshot("D:\\Python Programs\\SeleniumPavanSDET\\NopCommerce\\Screenshots" +
                                        "test_addCustomer_scr.png")  # Screenshot
            self.logger.error("********* Add customer Test Failed ************")
            assert False


        self.logger.info("******* Ending Add customer test **********")
        self.driver.close()
Esempio n. 21
0
class Test_001_Login():

    baseURL = ReadConfig.getApplicationURL()
    logger = LogGen.test_loggen()
    path = ".//TestData/TestData.xlsx"

    @pytest.mark.regression
    def test_login_ddt(self, setup):
        self.logger.info(
            "********************Test_001_Login***************************")
        self.logger.info(
            "******************** Verifying test_login_ddt **********************"
        )
        self.driver = setup
        self.driver.get(self.baseURL)
        self.login = LoginPage(self.driver)
        self.rows = XLUtility.getRowCount(self.path, "Sheet1")
        print("no of rows in the excel", self.rows)
        test_list = []

        for r in range(2, self.rows + 1):
            self.username = XLUtility.readData(self.path, "Sheet1", r, 1)
            self.password = XLUtility.readData(self.path, "Sheet1", r, 2)
            self.exp = XLUtility.readData(self.path, "Sheet1", r, 3)

            self.driver.maximize_window()
            self.driver.implicitly_wait(5)
            self.login.setUserName(self.username)
            self.login.setPassword(self.password)
            self.login.clickLogin()
            self.driver.implicitly_wait(5)
            act_title = self.driver.title

            if act_title == "Dashboard / nopCommerce administration":
                if self.exp == "Pass":
                    self.logger.info("****PASSED*****")
                    self.login.clickLogout()
                    test_list.append("Pass")

                elif self.exp == "Fail":
                    self.logger.info("*****FAILED******")
                    self.login.clickLogout()
                    test_list.append("Fail")

            elif act_title != "Dashboard / nopCommerce administration":
                if self.exp == "Pass":
                    self.logger.info("******FAILED*********")
                    test_list.append("Fail")

                elif self.exp == "Fail":
                    self.logger.info("******PASSED*********")
                    test_list.append("Pass")

        if "Fail" not in test_list:
            self.logger.info("***********test_login_ddt [PASSED]*************")
            self.driver.close()
            assert True
        else:
            self.logger.error(
                "***********test_login_ddt [FAILED]*************")
            self.driver.close()
            assert False

        self.logger.info(
            "*************** End of test_login_ddt *******************")
Esempio n. 22
0
class Test_003_add_customer:
    baseURL = ReadConfig.getApplicationUrl()
    username = ReadConfig.getUsername()
    password = ReadConfig.getPassword()

    logger = LogGen.loggen()

    @pytest.mark.sanity
    @pytest.mark.regression
    def test_add_customer(self, setUp):
        self.logger.info(
            "*********************Login into portal************************")
        self.driver = setUp
        self.driver.get(self.baseURL)
        self.lp = LoginPage(self.driver)
        self.lp.setUsername(self.username)
        self.lp.setPassword(self.password)
        self.lp.clickLogin()
        self.logger.info(
            "***********************Login Successful*******************************"
        )
        self.logger.info(
            "***********************Starting addCustomer test*******************************"
        )

        # Creating object of AddCustomer class to access methods
        self.addcust = AddCustomer(self.driver)
        self.addcust.clickOnCustomersMenu()
        self.addcust.clickOnCustomersMenuItem()
        self.addcust.clickOnAddNewButton()

        self.logger.info(
            "**********************Providing Customer Info******************************"
        )

        self.email = random_generator() + "@gmail.com"
        self.addcust.setEmail(self.email)
        self.addcust.setPassword("test12345")
        self.addcust.setFirstName("Shilpa")
        self.addcust.setLastName("Chourasia")
        self.addcust.selectGender("Female")
        self.addcust.setDOB("11/12/1989")
        self.addcust.setCompanyName("QAPython")
        #self.addcust.setNewsLetter("Your store name")
        self.addcust.setCustomerRoles("Guests")
        self.addcust.setManagerOfVender("Vendor 1")
        self.addcust.setAdminComments("This is just for testing")
        self.addcust.clickOnSaveButton()

        self.logger.info(
            "**********************Saving Customer Info******************************"
        )
        self.logger.info(
            "**********************Add Customer Validation started******************************"
        )

        self.msg = self.driver.find_element_by_tag_name("body").text
        print(self.msg)

        if "The new customer has been added successfully." in self.msg:
            assert True == True
            self.logger.info(
                "******************test_add_customer test case is passed******************"
            )

        else:
            self.driver.save_screenshots(".\\Screenshots\\" +
                                         "test_add_customer.png")
            self.logger.info(
                "********************test_add_customer test case is failed******************"
            )
            assert True == False
        self.driver.close()
        self.logger.info(
            "********************Ending of Test_003_add_customer******************"
        )
Esempio n. 23
0
class Test_003_AddCustomer:
    baseURL = "https://admin-demo.nopcommerce.com/"
    username = "******"
    password = "******"
    logger = LogGen.loggen()  # Logger

    @pytest.mark.sanity
    def test_addCustomer(self, setup):
        self.logger.info("************* Test_003_AddCustomer **********")
        self.driver = setup
        self.driver.get(self.baseURL)
        self.driver.maximize_window()

        self.lp = LoginPage(self.driver)
        self.lp.setUserName(self.username)
        self.lp.setPassword(self.password)
        self.lp.clickLogin()
        self.logger.info("************* Login succesful **********")

        self.logger.info("******* Starting Add Customer Test **********")

        self.addcust = AddCustomer(self.driver)
        self.addcust.clickOnCustomersMenu()
        self.addcust.clickOnCustomersMenuItem()

        self.addcust.clickOnAddnew()

        self.logger.info("************* Providing customer info **********")

        self.email = random_generator() + "@gmail.com"
        self.addcust.setEmail(self.email)
        self.addcust.setPassword("test123")
        self.addcust.setCustomerRoles("Guests")
        self.addcust.setManagerOfVendor("Vendor 2")
        self.addcust.setGender("Male")
        self.addcust.setFirstName("Pavan")
        self.addcust.setLastName("Kumar")
        self.addcust.setDob("7/05/1985")  # Format: D / MM / YYY
        self.addcust.setCompanyName("busyQA")
        self.addcust.setAdminContent("This is for testing.........")
        self.addcust.clickOnSave()

        self.logger.info("************* Saving customer info **********")

        self.logger.info(
            "********* Add customer validation started *****************")

        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 == True
            self.logger.info("********* Add customer Test Passed *********")
        else:
            self.driver.save_screenshot(
                ".\\Screenshots\\" + "test_addCustomer_scr.png")  # Screenshot
            self.logger.error(
                "********* Add customer Test Failed ************")
            assert True == False

        self.driver.close()
        self.logger.info("******* Ending Test_003_AddCustomer Test **********")
Esempio n. 24
0
class Test_003_Login:
    baseURL = readConfig.getApllicationURL()
    username = readConfig.getUseremail()
    password = readConfig.getPassword()
    logger = LogGen.loggingDmo()

    @pytest.mark.sanity
    def test_addCustomer(self, setup):

        self.logger.info("****************Test_001_Login*************  ")
        self.logger.info("**************** Started *************  ")
        self.driver = setup
        self.driver.get(self.baseURL)
        self.driver.maximize_window()

        self.lp = LoginPage(self.driver)
        self.lp.setUserName(self.username)
        time.sleep(5)
        self.lp.setPassword(self.password)
        time.sleep(5)
        self.lp.clickLogin()
        self.logger.info("*************** Login sucessful *************  ")

        self.addCust = AddCustomer(self.driver)
        self.addCust.clickOnCustomerMenu()
        self.addCust.clickOnCustomerMenuButton()
        self.addCust.addNewButton()

        def id_generator(size=8, chars=string.ascii_lowercase + string.digits):
            return ''.join(random.choice(chars) for x in range(size))

        self.email = id_generator() + "@gmail.com"
        time.sleep(3)
        self.addCust.setEmial(self.email)
        self.addCust.setPassword("test123")
        self.addCust.setFirstName("NANI")
        self.addCust.setLastName("NANI")
        self.addCust.setGender("/Male")
        time.sleep(3)
        self.addCust.doBirth("1/8/2020")
        self.addCust.companyName("LEGATO")
        self.addCust.setCustomerRoles("Vendors")
        self.addCust.setMangerOfVendor("Vendor 1")
        time.sleep(2)
        # self.addCust.newsLetter("Test store 2")
        self.addCust.adminComment("i am a good learner in python")
        self.logger.info("Member info entered sucessfully *************  ")
        self.addCust.clickOnSave()

        self.msg = self.driver.find_element_by_tag_name("body").text

        print(self.msg)
        if 'The new customer has been added successfully.' in self.msg:
            assert True == True

        else:
            self.driver.get_screenshot_as_file(".\\Screenshots\\" + "addCustomer.png")
            assert True == False

        self.logger.info("**********The new customer has been added successfully*************  ")
        self.driver.close()
Esempio n. 25
0
class Test_001_Login:
    baseURL = ReadConfig.getApplicationURL()
    username = ReadConfig.getUseremail()
    password = ReadConfig.getPassword()

    ### Calling the loggen method from LogGen Class ####
    logger = LogGen.loggen()

    ##### 1) test_homePageTitle ######
    def test_homePageTitle(self, setup):
        self.logger.info("*************** Test_001_Login *****************")
        self.logger.info("****Verify Home page title test ****")
        self.driver = setup
        self.driver.get(self.baseURL)

        act_title = self.driver.title
        if act_title == "Login - FleetCart":
            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.info(
                "*************** HomePageTitle test is Failed *****************"
            )
            assert False

        ######## 2) test_login #########
    def test_login(self, setup):
        self.logger.info(
            "*************** test_login test is passed *****************")
        self.driver = setup
        self.driver.get(self.baseURL)
        ### To access the methos in "pageObjects.LoginPage import LoginPage" Class
        self.lp = LoginPage(self.driver)
        self.lp.loginOneStep(self.username, self.password)
        # self.lp.setUserName(self.username)
        # self.lp.setPassword(self.password)
        # self.lp.clickLogin()

        act_title = self.driver.title
        if act_title == "Dashboard - FleetCart Admin":
            assert True
            self.driver.close()
            self.logger.info(
                "*************** test_login test is passed *****************")
        else:
            self.driver.save_screenshot(".\\Screenshots\\" + "test_login.png")
            self.driver.close()
            self.logger.error(
                "*************** test_login test is Failed *****************")
            assert False

    ##### 3) test_logout ######
    def test_logout(self, setup):
        self.logger.info(
            "*************** test_logout test is passed *****************")

        self.driver = setup
        self.driver.get(self.baseURL)
        ### To access the methos in "pageObjects.LoginPage import LoginPage" Class
        self.lp = LoginPage(self.driver)
        self.lp.setUserName(self.username)
        self.lp.setPassword(self.password)
        self.lp.clickLogin()
        self.lp.clickLogout()

        act_title = self.driver.title
        if act_title.strip(
        ) == "Login - FleetCart":  ##Trim\Strip (remove the white space in the Tag)
            assert True
            self.driver.close()
            self.logger.info(
                "*************** test_logout test is passed *****************")

        else:
            self.driver.save_screenshot(".\\Screenshots\\" + "test_logout.png")
            self.driver.close()
            self.logger.error(
                "*************** test_logout test is Failed *****************")

            assert False
Esempio n. 26
0
class Test_002_DDT_Login:
    baseURL = ReadConfig.getApplicationURL()
    path = "D:\\Python Programs\\SeleniumPavanSDET\\NopCommerce\\TestData\\LoginData.xlsx"
    logger = LogGen.loggen()

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

        self.rows = XLUtils.getRowCount(self.path, 'Sheet1')
        print("No of Excel Rows:  ", self.rows)

        lst_status = []  #Empty List variable

        for r in range(2, self.rows + 1):
            self.username = 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.setUserName(self.username)
            self.lp.setPassword(self.password)
            self.lp.clickLogin()
            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.clickLogout()
                    lst_status.append("Pass")
                elif self.exp == 'Fail':
                    self.logger.info("***Failed")
                    self.lp.clickLogout()
                    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("****LOGIN DDT test passed")
            self.driver.close()
            assert True

        else:
            self.logger.info("****LOGIN DDT test failed")
            self.driver.close()
            assert False

        self.logger.info(
            "************** End of Login DDT Test****************")
        self.logger.info(
            "**************** Completed  TC_LoginDDT_002 ************* ")
Esempio n. 27
0
class Test_0002_login_DDT:
    baseUrl = ReadConfig.getAppUrl()
    path = ".\\TestData\\LoginData.xlsx"
    logger = LogGen.loggen()

    @pytest.mark.regression
    def test_login(self, setup):
        self.logger.info("********* Login_002 DDT test starts *********")
        self.logger.info("************** Verifying Login test DDT *************")
        self.driver = setup
        self.driver.get(self.baseUrl)
        self.lp = LoginPage(self.driver)
        list_status=[]

        self.rows = XLUtil.getRowCount(self.path, 'Sheet1')
        print(" total number of rows", self.rows)

        for r in range(2, self.rows+1):
            self.username = XLUtil.readData(self.path, 'Sheet1', r, 1)
            self.password = XLUtil.readData(self.path, 'Sheet1', r, 2)
            self.exp  = XLUtil.readData(self.path, 'Sheet1', r, 3)

            self.lp.setUserName(self.username)
            self.lp.setPassword(self.password)
            self.lp.clickLogin()
            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("****** Test Step Passed******")
                    self.lp.clickLogout()
                    list_status.append("Pass")
                elif self.exp=="Fail":
                    self.logger.info("****** Test Step Failed******")
                    # self.lp.clickLogout()
                    list_status.append("Fail")

            elif act_title!=exp_title:
                if self.exp=="Pass":
                    self.logger.info("****** Test Step Failed ******")
                    # self.lp.clickLogout()
                    list_status.append("Fail")
                elif self.exp=="Fail":
                    self.logger.info("****** Test Step Passed ******")
                    # self.lp.clickLogout()
                    list_status.append("Pass")

        # print(list_status)
        if "Fail" not in list_status:
            self.logger.info("******* Login DDT test passed ******")
            self.driver.close()
            assert True
        else:
            self.logger.info("******* Login DDT test failed ******")
            self.driver.close()
            assert False

        self.logger.info("********* End of Login_002 DDT test *********")
Esempio n. 28
0
class Test_Login:

    baseURL = ReadConfig.getApplicationURl()
    username = ReadConfig.getUseremail()
    password = ReadConfig.getPassword()

    logger = LogGen.loggen()

    @pytest.mark.regression
    def test_homePageTitle(self, setupBrowserDriver):

        self.logger.info(" *************** this test case 1 *************** ")
        self.logger.info(" *************** verifing case 1 *************** ")
        self.driver = setupBrowserDriver
        self.driver.get(self.baseURL)
        act_title = self.driver.title

        if act_title == "Your store. Login":
            assert True
            self.driver.close()
            self.logger.info(
                " ************************** this test case 1 is pass ************************ "
            )
        else:
            self.driver.save_screenshot(".\\Screenshots\\" +
                                        "test_homePageTitle.png")
            self.driver.close()
            self.logger.error(
                " ************************** this test case 1 is fail ************************ "
            )
            assert False

    @pytest.mark.regression
    @pytest.mark.sanity
    def test_loginPage_Title(self, setupBrowserDriver):

        self.logger.info(
            " ************************** this test case 2 ************************ "
        )
        self.driver = setupBrowserDriver
        self.driver.get(self.baseURL)

        self.lp = LoginPage(self.driver)
        self.lp.setUserName(self.username)
        self.lp.setPassword(self.password)
        self.lp.clickLogin()
        act_title = self.driver.title
        print("after login page title :: " + act_title)

        self.driver.close()
        if act_title == "Dashboard / nopCommerce administration":
            self.logger.info(
                " ************************** this test case 2 is pass ************************ "
            )
            assert True
        else:
            self.driver.save_screenshot(".\\Screenshots\\" +
                                        "afterlogin_page_title.png")
            assert False
            self.logger.error(
                " ************************** this test case 2 is fail ************************ "
            )
Esempio n. 29
0
class Test_SearchCustomerBy:

    baseURL=ReadConfig.getApplicationURl()
    userName=ReadConfig.getUseremail()
    password=ReadConfig.getPassword()
    logger=LogGen.loggen()


    def loginPage(self,setupBrowserDriver):
        self.logger.info("*********launching browser*******")
        self.driver = setupBrowserDriver
        self.driver.get(self.baseURL)
        self.lp = LoginPage(self.driver)
        self.lp.setUserName(self.userName)
        self.lp.setPassword(self.password)
        self.lp.clickLogin()
        self.logger.info("********* Logged In in lloo *******")
        #return self.driver

    @pytest.mark.sanity
    @pytest.mark.regression
    def test_SearchByEmailid(self,setupBrowserDriver):

        self.driver = setupBrowserDriver
        self.login=Test_SearchCustomerBy()
        self.login.loginPage(setupBrowserDriver)

        self.addCust=AddCustomer(self.driver)
        self.addCust.clickonCustomerMenu()
        self.addCust.clickonCustomerMenuItem()
        self.logger.info("********* search by email *******")

        self.searchcust=SearchCustomerPage(self.driver)
        self.searchcust.searchByEmail("*****@*****.**")
        self.searchcust.searchByNOCustomerRole()
        self.searchcust.clickOnSearch()
        self.flag=self.searchcust.verifysearchEmailverify("*****@*****.**")
        if self.flag== True:
            self.logger.info("*************** search by email pass ***********************")
            self.driver.close()
        else:
            self.logger.info("************* search by email fail ******")
            self.driver.close()

    @pytest.mark.sanity
    @pytest.mark.regression
    def test_SearchByCustomerRole(self, setupBrowserDriver):
        self.driver = setupBrowserDriver
        self.login = Test_SearchCustomerBy()
        self.login.loginPage(setupBrowserDriver)

        self.addCust = AddCustomer(self.driver)
        self.addCust.clickonCustomerMenu()
        self.addCust.clickonCustomerMenuItem()
        self.logger.info("********* search by customer role *******")
        #pdb.set_trace()
        self.searchcust = SearchCustomerPage(self.driver)
        #self.searchcust.searchByNOCustomerRole()
        #self.searchcust.searchByCustomerRole("Registered")
        self.searchcust.clickOnSearch()
        self.flag=self.searchcust.verifyCustomeRolesearch("Registered")
        if self.flag== True:
            self.logger.info("*************** customer role search pass ***********************")
            self.driver.close()
        else:
            self.logger.info("*************customer role search fail ******")
            self.driver.close()
Esempio n. 30
0
class Test_OO2_DDT_Login:
    baseURL = ReadConfig.readApplicationURL()
    message_error = ReadConfig.readErrorMessage()
    # xml_path = Constants.PARENTDIRECTORY + "\\TestData\\TestData.xml"
    xml_path = os.path.join(Constants.PARENTDIRECTORY, "TestData",
                            "TestData.xml")
    logger = LogGeneration.loggen()

    def test_login(self, setup):
        self.logger.info(
            "******************** Test_OO2_DDT_Login ********************")
        self.logger.info(
            "******************** Verifying Login DDT Test ********************"
        )
        self.driver = setup
        self.driver.get(self.baseURL)
        self.lp = LoginPage(self.driver)
        list_status = []
        expected_output = []

        login_data_values = ReadXML.readXMLFile(self.xml_path)
        for credentials in login_data_values:
            self.username = credentials.get("username")
            self.password = credentials.get("password")
            self.output = credentials.get("output")
            expected_output.append(self.output)
            self.lp.setUserName(self.username)
            self.lp.setPassword(self.password)
            self.lp.clickLogin()
            time.sleep(5)

            actual_title = self.driver.title
            expected_title = Constants.EXPECTED_TITLE
            if actual_title == expected_title:
                print(
                    "******************** Valid Login test Passed ********************"
                )
                self.logger.info(
                    "******************** Login test Passed ********************"
                )
                self.lp.clickLogout()
                list_status.append("Pass")
            elif actual_title != expected_title:
                error_returned = self.lp.getErrorMessage()
                if self.message_error in error_returned:
                    list_status.append("Fail")
                    print(
                        "******************** Invalid Login test Passed ********************"
                    )
                    self.logger.info(
                        "******************** Invalid Login test Passed ********************"
                    )

            time.sleep(5)

        print(expected_output)
        print(list_status)
        print("********** End of Data Driven Test **********")
        self.driver.close()

        self.logger.info("********** End of Data Driven Test **********")